Skip to content

Doc.Installation.Manual.Linux.Prerequisites

Haydar Mehryar edited this page Mar 11, 2023 · 3 revisions

These instructions apply to the Ubuntu distribution. Installation on other distributions is possible with some modification to these instructions.

You may have some of the following packages already installed on your system.

  1. Install the following:

    apt-get update && apt-get install -y \
    cmake \
    curl \
    doxygen \
    g++ \
    gsl-bin \
    hdf5-tools \
    libboost-all-dev \
    libeigen3-dev \
    libgsl-dev \
    libhdf5-serial-dev \
    libxpm-dev \
    openmpi-bin \
    libxft-dev \
    libxext-dev \
    zlib1g-dev 
    
  2. Install ROOT6 from source. For example:

    export ROOTSYS="/usr/local/root"
    export PATH="${ROOTSYS}/bin:${PATH}"
    export LD_LIBRARY_PATH="${ROOTSYS}/lib:${LD_LIBRARY_PATH}"
    export PYTHONPATH="${ROOTSYS}/lib"
    mkdir -p ${ROOTSYS} && mkdir -p ${HOME}/root && cd ${HOME}/root
    git clone --branch v6-26-06 --depth=1 https://github.com/root-project/root.git src
    mkdir build && cd build
    cmake ../src -DCMAKE_CXX_STANDARD=14 -DCMAKE_INSTALL_PREFIX=${ROOTSYS}
    make -j8 install
    rm -r ${HOME}/root
    
  3. Install HepMC >=3.1. For example:

    curl -SL http://hepmc.web.cern.ch/hepmc/releases/HepMC3-3.2.5.tar.gz | tar -xvzC /usr/local
    cd /usr/local
    mkdir hepmc3-build
    cd hepmc3-build 
    cmake ../HepMC3-3.2.5 -DCMAKE_INSTALL_PREFIX=/usr/local -DHEPMC3_ENABLE_ROOTIO=ON -DROOT_DIR=${ROOTSYS} -DHEPMC3_BUILD_EXAMPLES=ON
    make -j8 install
    rm -r /usr/local/hepmc3-build 
    export LD_LIBRARY_PATH="/usr/local/lib:${LD_LIBRARY_PATH}"
    
  4. Install Pythia8 (8.307 is needed by SMASH, and it should be installed in a folder called pythia8307). For example:

    export pythiaV="8307"
    curl -SLk http://pythia.org/download/pythia83/pythia${pythiaV}.tgz | tar -xvzC /usr/local
    cd /usr/local/pythia${pythiaV}
    ./configure --enable-shared --prefix=/usr/local/ --with-hepmc3=/usr/local/HepMC3-3.2.5
    make -j8 
    make -j8 install
    
  5. Set environmental variables (e.g. in your .bashrc) for cmake to know where things are (needed for SMASH)

    First, set an environmental variable for your X-SCAPE location: export JETSCAPE_DIR="/path/to/JETSCAPE" Then, set the following:

    export SMASH_DIR="${JETSCAPE_DIR}/external_packages/smash/smash_code"
    export EIGEN3_ROOT="/usr/include/eigen3"
    export PYTHIA8DIR="/usr/local/"
    export PYTHIA8="/usr/local/"
    export PYTHIA8_ROOT_DIR="/usr/local/"
    
  6. (Optional) Install FastJet and FastJet Contribs. For example:

    curl -SL http://fastjet.fr/repo/fastjet-3.3.2.tar.gz | tar -xvzC /usr/local 
    cd /usr/local/fastjet-3.3.2 
    ./configure --prefix=/usr/local 
    make -j8 
    make -j8 install
    rm -r /usr/local/fastjet-3.3.2
    
    curl -SL http://fastjet.hepforge.org/contrib/downloads/fjcontrib-1.041.tar.gz | tar -xvzC /usr/local 
    cd /usr/local/fjcontrib-1.041 
    ./configure 
    make -j8 
    make -j8 install
    rm -r /usr/local/fjcontrib-1.041
    

If you encounter any problems, please post an Issue.