Re: error building root on RedHat 7.3

From: Tom Roberts <tjrob_at_fnal.gov>
Date: Tue, 5 Aug 2008 17:41:01 -0500


[I am just building Root 5.20 sufficient to use TNtuple, TDirectory,   and TFile in my program, linked statically; I am not trying the   root program that gets built, as I'm disabling just about everything.]

Christian Holm Christensen wrote:
> Try adding the following code to your "main" executable:
> /* magic line from Rene - for future reference! */
> gROOT->GetPluginManager()->AddHandler("TVirtualStreamerInfo",
> "*",
> "TStreamerInfo",
> "RIO",
> "TStreamerInfo()");

Thanks! That works on Mac OS X, as long as ROOTSYS is set to some value (any value will do, including "").

On Linux, using (ancient) gcc 3.2.1, I had to make two rather obvious edits to the Root source, and it works.

Now the problem is I cannot get Root 5.20 to compile on Windows. I'm using VC++ Express edition 2008 and Cygwin. Any suggestions:

     cl -O2  -nologo -FIw32pragma.h -MD -GR -EHsc- -W3 -wd4244 -Iinclude
            -D_WIN32_WINNT=0x0400 -I/usr/include/freetype2
            -Fograf2d/graf/src/TTF.o -c graf2d/graf/src/TTF.cxx
     TTF.cxx
     include\TTF.h(30) : fatal error C1083: Cannot open include file:
       'ft2build.h': No such file or directory
     make: *** [graf2d/graf/src/TTF.o] Error 2
     rm core/utils/src/RStl_tmp.cxx core/utils/src/rootcint_tmp.cxx

I tried --enable-builtin-freetype, but that caused other compile problems. I didn't need it on Mac or Linux.

The only instance of that file on this Windows system is in /usr/include/ft2build.h, but that seems unlikely to be useful.

FYI: cl gives:
$ cl
Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 15.00.21022.08

     for 80x86
Copyright (C) Microsoft Corporation. All rights reserved. usage: cl [ option... ] filename... [ /link linkoption... ]

> [about distributing my program]
> In short: My advice would be to distribute the RPMs of ROOT, and also
> make RPMs of your code.

I distribute on Mac OS X, Windows, and Linux. This greatly complicates things. For user convenience, I really need to include everything my program needs in my own installer (hence my desire to link statically).

Tom Roberts

My configure-disable-all (2 lines long): ./configure --disable-afs --disable-alien --disable-asimage

--disable-astiff --disable-builtin-afterimage --disable-builtin-ftgl 
--disable-builtin-freetype --disable-castor --disable-chirp 
--disable-cint7 --disable-cintex --disable-clarens --disable-dcache 
--disable-exceptions --disable-explicitlink --disable-fftw3 
--disable-gdml --disable-gfal --disable-g4root --disable-globus 
--disable-glite --disable-gsl-shared --disable-krb5 --disable-ldap 
--disable-genvector --disable-mathmore --disable-memstat 
--disable-minuit2 --disable-monalisa --disable-mysql --disable-odbc 
--disable-opengl --disable-oracle --disable-pch --disable-peac 
--disable-pgsql --disable-pythia6 --disable-pythia8 --disable-python 
--disable-qt --disable-qtgsi --disable-reflex --disable-rfio 
--disable-roofit --disable-rpath --disable-ruby --disable-sapdb 
--disable-shadowpw --disable-shared --disable-soversion --disable-srp 
--disable-ssl --disable-table --disable-unuran --disable-winrtdebug 
--disable-xml --disable-xrootd --disable-xft \
--enable-builtin-pcre --enable-builtin-zlib
Received on Wed Aug 06 2008 - 00:41:43 CEST

This archive was generated by hypermail 2.2.0 : Wed Aug 06 2008 - 11:50:01 CEST