Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migration of unmigrated content due to installation of a new plugin

...

  • C/C++ Compiler gcc 4.4 or greater
  • Java 1.6 or greater
  • Maven 3.0.
  • QT
  • 7 (Java 6 may still work but)
  • CVS
  • SVN
  • Latex2html
Info

I've used

  • OpenSuse 12.3 x86-64 with gcc 4.7.2  and Java OpenJDK 1.7.0_21
  • SL 6.4 x86-64               with gcc 4.4.7 and Java OpenJDK 1.7.0_25
  • SL 6.4 x86-64               with gcc 4.4.7
.2 , qt 4.8 
  • and Java OpenJDK 1.7.0_25
  • Ubuntu 12.04 LTS          with gcc 4.6.3 and Java OpenJDK 1.7.0_
21
  • 55

all modified scripts can be found in this tarball

Info

Bugs reported by Alex Finch:

    /sid_complete/v01-17-02-sid/KalDet/v01-12/kern/EXVKalDetector.h   
          virtual Double_t GetBfield (const TVector3 &xx = TVector3()) const

           which won't compile with latest ROOT versions. The ROOT release note were updated at my request to indicate this.

 

 

 

Preparation

Prepare an area:

Code Block

mkdir /scratch/sid_complete
cd /scratch/sid_complete

...

install the CERNLIB in therein the folder /scratch/sid_complete/cernlib2006 with two subfolders

  • lib
  • include

I have used symbolic links to set this up

Code Block

ln -s 2006b/x86_64-slc5-gcc43-opt/lib lib
ln -s 2006b/include/ include

unpack the scripts into the myscripts area

Code Block

tar -xzvf myscripts.tar.gz

...

I've used : v01-17-02

Code Block

mkdir ilcinstall
cd ilcinstall

tar -xzvf ilctools-v01-17-02.tar.gz

there are two scripts .... release-version.py (that needs to be adapted) and release-sid.cfg, which does contain all the packages you'll need for running SiD software. the adapted scripts are in the myscripts Folder

Code Block

cd /scratch/sid_complete
cp myscripts/release-sid.cfg  ilcinstall/v01-17-02/releases/v01-17/
cp myscripts/release-versions.py ilcinstall/v01-17-02/releases/v01-17/

you can test the installation with the -p switch and you can run it with the -i switch

Code Block

cd v01-17-02
./ilcsoft-install  -p releases/v01-17/release-sid.cfg
./ilcsoft-install  -i releases/v01-17/release-sid.cfg

You can speed uop the compilation by changing this from -j2 to -j8 on a multi-core machine

Code Block

# global options
ilcsoft.env["MAKEOPTS"]="-j2"

...

Panel

Known features/problems

  • check for lib/lib64 fails, this is true for the following packages:Xerces, Fastjet,HepPDT
    Fix ln -s lib64 lib
  • Problems in FastJet 2.4.2 compilation

    Code Block
    
    fix in 2.4.2/FastJet/include/fastjet/internal/ClusterSequence_N2.icc
    
    109c109
    >       if (jetA < jetB) {std::swap(jetA,jetB);}
    ---
    <       if (jetA < jetB) {swap(jetA,jetB);}
    
    2.4.2/FastJet/include/fastjet/NNH.hh
    
    Line 266   if (jetA < jetB) std::swap(jetA,jetB);
    Line 270 change to  this->init_jet(jetB, jet, index);
    

...

unpack it in sid_complete area

Code Block

 tar -xzvf jas-assembly-3.0.3-distribution.tar.gz

next thing is installing Maven 3.0.5 from the web , unpack and add the path

Code Block

 tar -xzvf  apache-maven-3.0.5-bin.tar.gz
 export PATH=$PATH:/scratch/sid_complete/apache-maven-3.0.5/bin

Then get the lcsim packages via CVS

Code Block

cd /scratch/sid_complete
mkdir lcsim
cd lcsim

cp /scratch/sid_complete/myscripts/build_-lcsim.sh .
source ./build_-lcsim.sh

This will check out  everything from the lcsim repository, set the path to Maven correctly  and build the lcsim distribution, this is a lot faster than the first step

...

this is done using another script

Code Block

cp myscripts/build_slicpandora.sh .
source ./build_slicpandora.sh
Panel

Note:

in the current cvs version (23/07/13), there are two bugs

Code Block

diff \-r1.13 CMakeLists.txt

27,28c27,28
< FIND_PACKAGE( PandoraSDK REQUIRED )
< FIND_PACKAGE( FineGranularityContent REQUIRED )
\--\-
> FIND_PACKAGE( PandoraPFANew REQUIRED )
> #FIND_PACKAGE( FineGranularityContent REQUIRED )
32c32
< FOREACH( pkg LCIO PandoraSDK&nbsp; )
\--\-
> FOREACH( pkg LCIO PandoraPFANew&nbsp; )


and then there was one difficulty in
diff \-r1.4 MCParticleProcessor.cpp


63c63
mcParticleParameters.m_mcParticleType = pandora::MC_STANDARD;
\--\-
> //&nbsp;&nbsp;&nbsp; mcParticleParameters.m_mcParticleType = pandora::MC_STANDARD;

this has been reported

...