Code Management and Installation for AliRoot | ||
The code is maintained under cvs.
The cvs repository will be made public soon.
It is the responsibility of the different detector groups to maintain and develop the different modules describing the Alice detectors. The modular structure of the code has been developed to reflect this fact, and changes in one module should not affect the others.
New modules can be provided, incorporated and tested within the AliRoot framework. These should then be submitted and incorporated into the centrally maintained filebase.
Any query or proposal for a change in the code can be addressed to the Alice Simulation Mailing List. Portions of code have to be sent to the current maintainer who has the task to introduce them in the official code for the next release.
For the moment we do not use any version control for the code. It is expected that a version control mechanism will be soon put in place in the framework of the Alice Offline Software. Then AliRoot package will be maintained via this control mechanism.
We expect the code to evolve rapidly, as the TDR studies will require frequent modifications and updates, so we have decided to reserve the right to release a new version up to once a week.
The AliRoot framework will support an
interface to Geant4. Reconstruction and analysis of simulated events
are also supported by AliRoot.
The code is installed at CERN on the ION Work Group Server. The ALICE environment is automatically setup at login time, so users can immediately start using the code. Both a HP-UX and a Linux versions are installed.
All the code and the related material is available in the directory pointed by the variable $ALICE_ROOT. The AliRoot package needs the few packages and routines from the CERN Library. These are contained in a reduced subset of the CERN Library available from the ALICE distribution.
Users who do not have access to afs or who want to have a local installation of the ALICE software should install the code locally according to the procedure described in the next chapter.
As of writing the code has been tested on HP-UX 10.2, Linux 5.1, DEC OSF
and Solaris. Porting to other platforms and compilers will take place.
In order to install the code, the following steps should be performed:
variable | value |
---|---|
ALICE | directory |
ALICE_LEVEL | pro |
ALICE_ROOT | $ALICE/$ALICE_LEVEL |
ALICE_TARGET | `uname` (i.e. result of the Unix uname command) |
LD_LIBRARY_PATH SHLIB_PATH |
$ALICE_ROOT/lib/tgt_${ALICE_TARGET}\:$LD_LIBRARY_PATH (on all systems) $ALICE_ROOT/lib/tgt_${ALICE_TARGET}\:$SHLIB_PATH (on hpux) |
PATH | $PATH\:$ALICE_ROOT/bin/tgt_${ALICE_TARGET} |
At this point you should logout, login again and check that the symbols are set correctly.
$ cd $ALICE $ gtar xvfz AliOffline3.01.tar.gz
Or
/afs/cern.ch/alice/offline/dist/AliRoot3.01.tar.gz
/afs/cern.ch/alice/offline/dist/AliLibs3.01.tar.gz
$ cd $ALICE $ gtar xvfz AliRoot3.01.tar.gz $ gtar xvfz AliLibs3.01.tar.gz
$ cd $ALICE_ROOT $ gmake cernlibs
$ cd $ALICE_ROOT $ gmake
$ cd $ aliroot
AliRoot requires the compiler system egcs 1.1.1 or later. Unfortunately the location of the include files is dependent on the compiler version on Linux. While g++ knows the location of the files relative to its own version, but this is not the case for the makedepend, that should be told where include files are. This is accomplished by the DEPINC variable in the file $ALIROOT/conf.
In case several error message appear during the make phase, complaining for include files not found, the list of include directories in DEPINC should be compared with the standard list of the compiler, that can be found out with the following commands:
touch dummy.cxx g++ -v dummy.cxx
and looking at the output between the lines:
#include <...> search starts here: . . . . End of search list.