Table of Contents |
---|
Requirements
Please make sure to follow the instructions for compiling python prior to building ROOT since ROOT needs to be built against python. ROOT may also be built against MySQL on the linuxes. Also note that often the version of the source we utilize for ROOT is Fermi-specific where patches have been applied or the version of ROOT is from a branch from their Subversion repository.
Table of Contents |
---|
v5.26.00a-gl1
Includes patch to TMVA Config.h and Config.cxx for windows
redhat5-i686-32bit-gcc41
- Need fftw3, gccxml, GSL to be build. Obtain FFTW 3.1.2 from: http://www.fftw.org/download.html
Build on rhel5-32 or bldlnx09: ./configure --enable-portable-binary --enable-shared --prefix=$PWD
Obtaing GSL 1.10 from: http://www.gnu.org/software/gsl/ ./configure --prefix=$PWD "make" "make install"
redhat4-i686-32bit-gcc34
- Obtain Fermi's copy of the source from /afs/slac/g/glast/ground/GLAST_EXT/srcExtlibs/root-v5.26.00a-gl1.src..tar.gz and unpack, it will be dumped into a directory named "root"
- set ROOTSYS to the same directory as the source was checked out into. cd into the root directory
- Run configure:
./configure linux --fail-on-missing --enable-mysql --with-mysql-incdir=/afs/slac/g/glast/ground/GLAST_EXT/redhat4-i686-32bit-gcc34/mysql/5.1.39/gcc34/include/mysql --with-mysql-libdir=/afs/slac/g/glast/ground/GLAST_EXT/redhat4-i686-32bit-gcc34/mysql/5.1.39/gcc34/lib/mysql --enable-xrootd --enable-python --with-python-incdir=/afs/slac/g/glast/ground/GLAST_EXT/redhat4-i686-32bit-gcc34/python/2.5.1-gl1/gcc34/include/python2.5 --with-python-libdir=/afs/slac/g/glast/ground/GLAST_EXT/redhat4-i686-32bit-gcc34/python/2.5.1-gl1/gcc34/lib/python2.5/config --enable-reflex --enable-cintex --enable-roofit --with-oracle-incdir=/usr/oracle/rdbms/public --with-oracle-libdir=/usr/oracle/lib --enable-minuit2 --enable-unuran --enable-table --enable-explicitlink --with-gccxml=$userSpace/root-v5.26-gl1/gccxml/0.9.0_20090601/slc4_ia32_gcc34/bin --enable-gdml --enable-genvector --enable-mathcore --enable-mathmore --with-fftw3-incdir=$userSpace/root-v5.26-gl1/fftw3/3.1.2/slc4_ia32_gcc34/include --with-fftw3-libdir=$userSpace/root-v5.26-gl1/fftw3/3.1.2/slc4_ia32_gcc34/lib --with-gsl-incdir=$userSpace/root-v5.26-gl1/GSL/1.10/slc4_ia32_gcc34/include --with-gsl-libdir=$userSpace/root-v5.26-gl1/GSL/1.10/slc4_ia32_gcc34/lib > & config-rhel4.log & - Build by running "make >& build-rhel4.log &"
- Update etc/system.rootrc to include the lines:
# As suggested by Wilko, April, 2009, so that when a job writes to xrootd, missing directories are created upon request.
XNet.Mkpath: 1 - Copy the following into $GLAST_EXT using the directory structure:
ROOT/v5.26.00a-gl1/gcc34/
README bin build-rhel4.log cint config-rhel4.log doc etc fonts icons include lib macros man test tutorials
Windows
If cygwin is not already installed, installcygwin including gcc, make, etc NOTE: cygwin's link.exe application must be renamed, so that VC's link will be used for the build.
http://root.cern.ch/twiki/bin/view/ROOT/PatchesV5-14-00
...
- Obtain Fermi's copy of the source from /afs/slac/g/glast/ground/GLAST_EXT/srcExtlibs/root-v5.26.00a-gl1.src..tar.gz and unpack, it will be dumped into a directory named "root"
- In a DOS window
set PATH=
set LIB=
set INCLUDE=
"C:\Program Files\Microsoft Visual Studio .NET 2003\Common7\Tools\vsvars32.bat"
set ROOTSYS=C:\heather\root-v5.20-gl1\root
set PYTHONDIR=C:\heather\glast\extlib\python\2.5.1-gl1\vc71
set PYTHONPATH=%ROOTSYS%\bin
set ROOTBUILD=opt
set LIB=C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Lib;C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\Lib;%LIB%;%ROOTSYS%\lib
set PATH=C:\heather\glast\extlib\python\2.5.1-gl1\vc71;%ROOTSYS%\bin;C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Bin;C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Lib;%PATH%;%ROOTSYS%\lib
set INCLUDE=C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Include;C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\include;%INCLUDE% - Start up cygwin: bash --login -i
- Run ./confgure:
./configure win32 --enable-roofit --enable-minuit2 --enable-table --enable-python --enable-gdml --enable-unuran --disable-odbc --enable-mathmore --enable-genvector --enable-tmva --enable-reflex --enable-cintex --enable-xrootd --with-fftw3-incdir=C:/heather/root-v5.20-gl1/fftw3/3.1.2/win32_vc71/include --with-fftw3-libdir=C:/heather/root-v5.20-gl1/fftw3/3.1.2/win32_vc71/lib --with-gccxml=C:/heather/root-v5.20-gl1/GCC_XML/0.9.0_20090601/win32_vc71/bin --with-python-libdir=C:/heather/glast/extlib/python/2.5.1-gl1/vc71/libs --with-python-incdir=C:/heather/glast/extlib/python/2.5.1-gl1/vc71/include - make
v5.22.00e-gl1
Includes updated xrootd from Wilko (same as in v5.20.00-gl5)
redhat4-i686-32bit-gcc34
- Obtain Fermi's copy of the source from /afs/slac/g/glast/ground/GLAST_EXT/srcExtlibs/root-v5.22.00e-gl1.tar.gz and unpack, it will be dumped into a directory named "root"
- set ROOTSYS to the same directory as the source was checked out into. cd into the root directory
- Run configure:
./configure linux --fail-on-missing --enable-mysql --with-mysql-incdir=/afs/slac/g/glast/ground/GLAST_EXT/redhat4-i686-32bit-gcc34/mysql/5.1.39/gcc34/include/mysql --with-mysql-libdir=/afs/slac/g/glast/ground/GLAST_EXT/redhat4-i686-32bit-gcc34/mysql/5.1.39/gcc34/lib/mysql --enable-xrootd --enable-python --with-python-incdir=/afs/slac/g/glast/ground/GLAST_EXT/redhat4-i686-32bit-gcc34/python/2.5.1-gl1/gcc34/include/python2.5 --with-python-libdir=/afs/slac/g/glast/ground/GLAST_EXT/redhat4-i686-32bit-gcc34/python/2.5.1-gl1/gcc34/lib/python2.5/config --enable-reflex --enable-cintex --enable-roofit --with-oracle-incdir=/usr/oracle/rdbms/public --with-oracle-libdir=/usr/oracle/lib --enable-minuit2 --enable-unuran --enable-table --enable-explicitlink --with-gccxml=$userSpace/gaudi_v21r4/gccxml/0.9.0_20090601/slc4_ia32_gcc34/bin --enable-gdml > & config-rhel4.log & - Build by running "make >& build-rhel4.log &"
- Update etc/system.rootrc to include the lines:
# As suggested by Wilko, April, 2009, so that when a job writes to xrootd, missing directories are created upon request.
XNet.Mkpath: 1 - Copy the following into $GLAST_EXT using the directory structure:
ROOT/v5.22.00e-gl1/gcc34/
README bin build-rhel4.log cint config-rhel4.log doc etc fonts icons include lib macros man test tutorials
...
We ran into a problem this time with distribution of our linux build for ROOT. It seems prefix cannot be used, so we must set the ROOTSYS env var for our build. make install no longer seems to work unless prefix is used, so we are left to prune the resulting ROOT build directories on our own.
redhat4-x86_64-64bit-gcc34
- Obtain Fermi's copy of the source from /afs/slac/g/glast/ground/GLAST_EXT/srcExtlibs/root-v5.20.00-gl5.tar.gz and unpack, it will be dumped into a directory named "root"
- set ROOTSYS to the same directory as the source was checked out into. cd into the root directory
- Run configure:
./configure linuxx8664gcc --fail-on-missing --enable-mysql --with-mysql-incdir=/afs/slac/g/glast/ground/GLAST_EXT/redhat4-x86_64-64bit-gcc34/mysql/4.1.18/gcc34/include/mysql --with-mysql-libdir=/afs/slac/g/glast/ground/GLAST_EXT/redhat4-x86_64-64bit-gcc34/mysql/4.1.18/gcc34/lib/mysql --enable-xrootd --enable-python --with-python-incdir=/afs/slac/g/glast/ground/GLAST_EXT/redhat4-x86_64-64bit-gcc34/python/2.5.1-gl1/gcc34/include/python2.5 --with-python-libdir=/afs/slac/g/glast/ground/GLAST_EXT/redhat4-x86_64-64bit-gcc34/python/2.5.1-gl1/gcc34/lib/python2.5/config --enable-reflex --enable-cintex --enable-roofit --with-oracle-incdir=/usr/oracle/rdbms/public --with-oracle-libdir=/usr/oracle/lib --enable-minuit2 --enable-unuran --enable-table --enable-explicitlink > & config-rhel4.log & - Build by running "make >& build-rhel4.log &"
- Update etc/system.rootrc to include the lines:
# As suggested by Wilko, April, 2009, so that when a job writes to xrootd, missing directories are created upon request.
XNet.Mkpath: 1 - Copy the following into $GLAST_EXT using the directory structure:
ROOT/v5.20.00-gl4/gcc34/
README bin build-rhel4.log cint config-rhel4.log doc etc fonts icons include lib macros man test tutorials
redhat3-i686-32bit-gcc32
- Obtain Fermi's copy of the source from /afs/slac/g/glast/ground/GLAST_EXT/srcExtlibs/root-v5.20.00-gl5.tar.gz and unpack, it will be dumped into a directory named "root"
- set ROOTSYS to the same directory as the source was checked out into. cd into the root directory
- Run configure:
./configure linux --fail-on-missing --enable-mysql --with-mysql-incdir=/afs/slac/g/glast/ground/GLAST_EXT/redhat3-i686-32bit-gcc32/mysql/4.1.18/gcc32/include/mysql --with-mysql-libdir=/afs/slac/g/glast/ground/GLAST_EXT/redhat3-i686-32bit-gcc32/mysql/4.1.18/gcc32/lib/mysql --enable-xrootd --enable-python --with-python-incdir=/afs/slac/g/glast/ground/GLAST_EXT/redhat3-i686-32bit-gcc32/python/2.5.1-gl1/gcc32/include/python2.5 --with-python-libdir=/afs/slac/g/glast/ground/GLAST_EXT/redhat3-i686-32bit-gcc32/python/2.5.1-gl1/gcc32/lib/python2.5/config --enable-reflex --enable-cintex --enable-roofit --with-oracle-incdir=/usr/oracle/rdbms/public --with-oracle-libdir=/usr/oracle/lib --enable-minuit2 --enable-unuran --enable-table --enable-explicitlink > & config-rhel3.log & - Build by running "make >& build-rhel3.log &"
- Update etc/system.rootrc to include the lines:
# As suggested by Wilko, April, 2009, so that when a job writes to xrootd, missing directories are created upon request.
XNet.Mkpath: 1 - Copy the following into $GLAST_EXT using the directory structure:
ROOT/v5.20.00-gl4/gcc32/
README bin build-rhel3.log cint config-rhel3.log doc etc fonts icons include lib macros man test tutorials
redhat4-i686-32bit-gcc34
- Obtain Fermi's copy of the source from /afs/slac/g/glast/ground/GLAST_EXT/srcExtlibs/root-v5.20.00-gl5.tar.gz and unpack, it will be dumped into a directory named "root"
- set ROOTSYS to the same directory as the source was checked out into. cd into the root directory
- Run configure:
./configure linux --fail-on-missing --enable-mysql --with-mysql-incdir=/afs/slac/g/glast/ground/GLAST_EXT/redhat4-i686-32bit-gcc34/mysql/4.1.18/gcc34/include/mysql --with-mysql-libdir=/afs/slac/g/glast/ground/GLAST_EXT/redhat4-i686-32bit-gcc34/mysql/4.1.18/gcc34/lib/mysql --enable-xrootd --enable-python --with-python-incdir=/afs/slac/g/glast/ground/GLAST_EXT/redhat4-i686-32bit-gcc34/python/2.5.1-gl1/gcc34/include/python2.5 --with-python-libdir=/afs/slac/g/glast/ground/GLAST_EXT/redhat4-i686-32bit-gcc34/python/2.5.1-gl1/gcc34/lib/python2.5/config --enable-reflex --enable-cintex --enable-roofit --with-oracle-incdir=/usr/oracle/rdbms/public --with-oracle-libdir=/usr/oracle/lib --enable-minuit2 --enable-unuran --enable-table --enable-explicitlink > & config-rhel4.log & - Build by running "make >& build-rhel4.log &"
- Update etc/system.rootrc to include the lines:
# As suggested by Wilko, April, 2009, so that when a job writes to xrootd, missing directories are created upon request.
XNet.Mkpath: 1 - Copy the following into $GLAST_EXT using the directory structure:
ROOT/v5.20.00-gl4/gcc34/
README bin build-rhel4.log cint config-rhel4.log doc etc fonts icons include lib macros man test tutorials
...