Converting SFrame area to work with RootCore
Below are some instructions on how to upgrade topUtils to the version that uses the
RootCore common packages.
First, start a new terminal & go to your sframe area:
> cd mysframearea
Now setup sframe & RootCore (note this also sets up root v5.28):
> source /nfs/software/AtlasSoftware/RootCore/Root_v528/RootCore/scripts/setup.sh
> source ./setup.sh
Update sframe to the latest tag:
> svn sw https://sframe.svn.sourceforge.net/svnroot/sframe/SFrame/tags/SFrame-03-04-23
Rebuild sframe (because of root version change):
> rm -rf lib/*
> make distclean
> make
If you have the pileup reweighting & good runs lists packages checkout, these should be removed:
> rm -rf GoodRunsLists
> rm -rf PileupReweighting
Update the common code to the svn trunk version:
> cd topUtils
> svn up
Rebuild all the packages:
> cd $SFRAME_DIR
> cd manTree
> make distclean; make
> cd ../manTreeSFrameBase
> make distclean; make
> cd ../topUtils
> make distclean; make
Do the same for any of your private packages.
Note, you may find your package does not compile because it cannot find includes for the
GoodRunsLists or
PileupReweighting packages. In that case add these lines at the end of your package's Makefile:
# include path for RootCore packages
INCLUDES += -I$(ROOTCOREDIR)/../
INCLUDES += -I$(ROOTCOREDIR)/include
# include needed for proof running
INCLUDES += -I../RootCore
INCLUDES += -I../RootCore/RootCore/include
You will also need to update your xml files to load all the libraries. Below is a list of the typical needed libraries:
<Library Name="libSFramePlugIns"/>
<Library Name="libGoodRunsLists"/>
<Library Name="libmanTree"/>
<Library Name="libmanTreeSFrameBase"/>
<Library Name="libPileupReweighting"/>
<Library Name="libMuonMomentumCorrections"/>
<Library Name="libJetEffiProvider"/>
<Library Name="libegammaAnalysisUtils"/>
<Library Name="libTopMetTool"/>
<Library Name="libJetUncertainties"/>
<Library Name="libJetResolution"/>
<Library Name="libtopUtils"/>
<Package Name="SFrameCore.par" />
<Package Name="SFramePlugIns.par" />
<Package Name="manTree.par" />
<Package Name="manTreeSFrameBase.par" />
<Package Name="PlottingUtil.par" />
<Package Name="RootCore.par" />
<Package Name="topUtils.par" />
--
MarkOwen - 16-Sep-2011