...
- 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 --disable-mysql --enable-python --with-python-incdir=/afs/slac.stanford.edu/g/glast/ground/GLAST_EXT/tiger-i386-32bit-gcc40/python/2.5.1-gl3/gcc40/include/python2.5 --with-python-libdir=/afs/slac.stanford.edu/g/glast/ground/GLAST_EXT/tiger-i386-32bit-gcc40/python/2.5.1-gl3/gcc40/lib/python2.5/config --enable-roofit --disable-odbc --enable-minuit2 --enable-unuran --enable-table >& config-tiger.log & - Build by running "make >& build-tiger.log &"
- libPyROOT.dylib must be rebuilt, due to a need to make it a "bundle" rather than "shared library":
cd into pyroot/src directory and do:
g++ -flat_namespace -bundle *.o -bundle_loader $GLAST_EXT/Library/Frameworks/Python.framework/Versions/Currentpython/2.5.1-g3/gcc40/bin/python2.4 -L/Users/cdj/src/cyberi/lib/root python -L$ROOTSYS/lib -ldl -lCore -lCint -lRIO -lNet -lHist -lGraf -lGraf3d -lGpad -lTree -lMatrix -framework Python -lMathCore -lThread -lReflex -L$GLAST_EXT/python/2.5.1-gl3/gcc40/lib/python2.5/config -lpython2.5 -o libPyROOT.sodylib
See: https://savannah.cern.ch/bugs/index.php?22003 - The *.dylib files will have their references to other ROOT libraries hard-coded. This must be fixed before the libraries can be distributed. Both the ids and the ROOT libraries referenced must be updated.
- First check the id and references using:
otool -L name.dylib. i.e. otool -L libCint.dylib - Next update the id using the command:
install_name_tool -id newID fileName i.e. install_name_tool -id libCint.dylib libCint.dylib - For any ROOT libraries referenced do:
install_name_tool -change oldName newName fileName i.e install_name_tool -change $ROOTSYS/lib/libNet.dylib libNet.dylib libPyROOT.dylib
- First check the id and references using:
- 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/gcc40/
README bin build-tiger.log cint config-tiger.log doc etc fonts icons include lib macros man test tutorials