Search/Navigation:
Related:
SLAC/EPP/HPS Public
Jefferson Lab/Hall B/HPS Run Wiki
S30XL-LESA/LDMX
You must have these build tools available on the system.
These package dependencies must be installed as well (details covered below):
If you want to build the documentation then this is also required.
The default, shared Linux environment at SLAC can not be used as the version of gcc is too old.
A more recent environment can be setup and checked as follows.
ssh rhel6-64 scl enable devtoolset-2 bash gcc --version
You should see the following gcc version now.
(GCC) 4.8.2 20140120 (Red Hat 4.8.2-15) Copyright (C) 2013 Free Software
This version of the compiler should support the C++11 standard.
An alternate compiler also needs to be setup to override the default one.
export PATH=/apps/gcc/4.8.2/bin/:$PATH gcc --version
You should see the following GCC version.
gcc (GCC) 4.8.2
This version should support C++11.
It is likely your system already has a recent enough version of CMake installed on it.
You can check for this from the shell.
which cmake cmake
It will print something like this if CMake is installed.
$ which cmake /usr/bin/cmake $ cmake cmake version 2.8.12.2 [...]
If CMake is not found or the version is too old, then follow the Installing CMake guide to build it.
cd workdir svn co svn://svn.freehep.org/lcio/trunk lcio-trunk cd lcio-trunk mkdir build cd build cmake -DINSTALL_DOC=OFF -DINSTALL_JAR=OFF .. make install cd .. export LCIO=$PWD
Follow the instructions at the ROOT website to install it.
Then you will want to source the setup script which will set the ROOTSYS variable.
. bin/thisroot.sh
This should set ROOTSYS to point at your ROOT installation.
The project is stored in a public github repository. The code can be "cloned" i.e. copied to a users local machine by issuing the following commands from a terminal.
cd /path/to/workdir git clone https://github.com/omar-moreno/hps-dst.git
A github account is not required to clone the source code.
You may also want to use a tagged release. For instance, the v0.7 tag can be downloaded from the following URL.
https://github.com/omar-moreno/hps-dst/releases/tag/v0.7
Or you can execute these shell commands.
wget https://github.com/omar-moreno/hps-dst/archive/v0.7.tar.gz tar zxvf v0.7.tar.gz cd hps-dst-0.7
Now you may build the project locally in the usual way.
Before the project is built, the following environment variables need to be set.
ROOTSYS=/path/to/root GBL_DIR=/path/to/gbl/cpp LCIO=/path/to/lcio
Then the project should be built as follows.
cd hps-dst/ mkdir build; cd build cmake ../ make
This will create the binaries in the build/bin directory along with the shared library HpsEvent.so in the build/lib directory, which contains the ROOT dictionary and HPS Event API.
The API documentation can be generated as follows:
make doc
This will generate both LaTeX and html documentation in the directory hps-dst/doc.