Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. 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"
  2. set ROOTSYS to the same directory as the source was checked out into.  cd into the root directory
  3. 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 --enable-explicitlink >& config-tiger.log &
  4. Build by running "make >& build-tiger.log &"
  5. 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/python/2.5.1-g3/gcc40/bin/python -L$ROOTSYS/lib -ldl -lCore -lCint -lRIO -lNet -lHist -lGraf -lGraf3d -lGpad -lTree -lMatrix -lMathCore -lThread -lReflex -L$GLAST_EXT/python/2.5.1-gl3/gcc40/lib/python2.5/config -lpython2.5 -o libPyROOT.dylib
    See:  https://savannah.cern.ch/bugs/index.php?22003
  6. 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.
    1. First check the id and references using:
      otool -L name.dylib.  i.e.  otool -L libCint.dylib
    2. Next update the id using the command: 
      install_name_tool -id newID fileName  i.e. install_name_tool -id libCint.dylib libCint.dylib
    3. 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
  7. 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
  8. 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