The STAR code and libraries follows a structure and policy described in Library release structure and policy. Changes in each version is described in Library release history.
Installing the core STAR software is (should be) as simple as getting a full set of code for a given library, unpacking it into $STAR_PATH (default is $STAR_ROOT/packages as described in Setting up your computing environment) and issuing the following commands (in our example, we use STAR_LEVEL=SL09b with revision 1 from that library).
% cd $STAR_PATH % mkdir SL11d && cd SL11d % cvs co -rSL11d asps mgr QtRoot StarVMC StRoot kumacs pams StarDb StDb OnlTools % starver SL11d % cd $STAR % cons
And wait ... until all is done. This will actually build the non-optimized version of our libraries.
To build the optimized version, use
% setenv NODEBUG yes
before you execute the starver command. If you need both, you will hence have to build twice per libraries.
To build using alternate compilers, you will need to run the setup command before running cons. For example, for the icc compiler you will need an appropriate version of $OPTSTAR and
% setup icc
and for an alternate version of gcc (and pending the fact you have the specific version installed), you will need to use something similar to
% setup gcc 4.5.1
Note that those syntax assumes specific path for gcc (installed in either /opt/gcc/$version or $OPTSTAR/alt/) while icc is expected to have an setup program located in $GROUP_DIR (as intelcc.csh) defining the paths.
Finally, on kernel supporting it, you can also switch to an alternate bits environment like this
% setup 64bits
and get the compilation proceed with the 64 bits support.
Sometimes, our libraries get packed with the "Pool" (user space) libraries and their support may vary. To be on the safe side, exclude several of them from compilation by setting the environment variable SKIP_DIRS before executing cons.
% setenv SKIP_DIRS "StEbyePool StHighptPool StAngleCorrMaker StSpinMaker StEbyeScaTagsMaker StEbye2ptMaker StDaqClfMaker StFtpcV0Maker StStrangePool GeoTestMaker"
The levels pro, new and dev are special levels as described in Library release structure and policy. pro is especially relevant as if no level is specified, the STAR login will revert to whatever pro is set to be. You may then do something like the below (again, our example assumes the default library is SL07b - please adjust accordingly).
% cd $STAR_PATH % test -e pro && rm -f pro % ln -s SL11d ./pro
Your default STAR library is then set for your site.