Code Management and Installation for AliRoot  


  1. Code management
  2. Release Policy
  3. Porting and availability
  4. Installation

1. Code Management

The code is maintained under cvs. The cvs repository will be made public soon.

2. Release Policy

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.

3. Status and availability

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.

4. Installation Procedure

In order to install the code, the following steps should be performed:

  1. Install ROOT and define the necessary symbols correctly.

  2. Decide in which directory you will install the ALICE sofware. We will indicate it with directory

  3. Define the following global variables in the login script

    ALICE directory
    ALICE_TARGET `uname` (i.e. result of the Unix uname command)
    $LD_LIBRARY_PATH\:$ALICE_ROOT/lib (on all systems)
    $SHLIB_PATH\:$ALICE_ROOT/lib (on hpux)

    At this point you should logout, login again and check that the symbols are set correctly.

  4. Either

    1. Get the file /afs/

    2. Unpack it with

      $ cd $ALICE
      $ gtar xvfz AliOffline3.01.tar.gz


    1. Get the files


    2. Unpack them with

      $ cd $ALICE
      $ gtar xvfz AliRoot3.01.tar.gz
      $ gtar xvfz AliLibs3.01.tar.gz

  5. install the CERN library part

    $ cd $ALICE_ROOT
    $ gmake cernlibs

  6. Install the ALICE specific software

    $ cd $ALICE_ROOT
    $ gmake

  7. Copy the file $ALICE_ROOT/.rootrc to your home directory

  8. Change to your home directory and run the code

    $ cd
    $ aliroot
    root [1] .x menu.C

Notice for Linux users

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.

Page maintained by: Yiota Foka
Back to: ALICE home, Offline home