How to install MpdRoot

If you are going to work on the Nica cluster at LHEP go to the Installation of the MpdRoot
Before installing MpdRoot make sure that the following packages are installed on your system!

  • Install packages needed for RedHat-based OS (eg, CentOS, Scientific Linux):
sudo su
yum install subversion git make cmake gcc-gfortran gcc-c++ binutils file patch redhat-lsb-core libX11-devel libXmu-devel libXpm-devel libXft-devel libXext-devel mesa-libGLU-devel libxml2-devel expat-devel zlib-devel postgresql-devel mysql-devel openssl-devel curl-devel automake libtool fftw3-devel
  • Install packages needed for Debian-based OS (eg, Ubuntu):
sudo su
apt-get install subversion git make cmake g++ gcc gfortran binutils patch lsb-release libx11-dev libxmu-dev libxpm-dev libxft-dev libxext-dev dpkg-dev xlibmesa-glu-dev libglew-dev libxml2-dev libexpat1-dev zlib1g-dev libpqxx-dev libmysqlclient-dev libssl-dev libcurl4-openssl-dev automake libtool fftw3-dev

Installing the external packages

  1. Set an installation path for the external packages, e.g. /opt

NOTE: If you are installing FairSoft/FairRoot to a system directory like /opt, then switch user to superuser ‘root’ (“sudo su” command).

export INSTALLATION_PATH=/opt
cd $INSTALLATION_PATH
  1. Install the FairSoft package

The June 2019 release of FairSoft can be downloaded from GitHub:

git clone https://github.com/FairRootGroup/FairSoft.git fairsoft
cd fairsoft
git checkout jun19p1

Apply patch (to correct the ROOT bug concerned with PostgreSQL reading):

wget http://se51-98.jinr.ru/data/fairsoft_jun19p1.patch
patch -p1 -i fairsoft_jun19p1.patch

Installing fairsoft:

./configure.sh
# 1) GCC (on Linux)
# 1) No Debug Info
# 2) No (not install FairMQ Only)
# 1) Yes (install Simulation engines and event generators)
# 2) Internet (install G4 files from internet)
# 2) No (not compile Geant4 in multihreaded mode)
# 2) No (not install the python bindings) 
# path: $INSTALLATION_PATH/fairsoft/install

Follow the instructions on the screen. You can use options suggested above.

  1. Install the FairRoot environment

The release of FairRoot (18.2.0) can be downloaded from GitHub:

cd $INSTALLATION_PATH
export SIMPATH=$INSTALLATION_PATH/fairsoft/install
export PATH=$SIMPATH/bin:$PATH
git clone https://github.com/FairRootGroup/FairRoot.git fairroot
cd fairroot 
git checkout v18.2.0

Apply patch (to correct FairMCApplication):

wget http://se51-98.jinr.ru/data/fairroot_18_20.patch
patch -p1 -i fairroot_18_20.patch

Installing fairroot:

mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX="$INSTALLATION_PATH/fairroot/install" -DBUILD_EXAMPLES=OFF ..
make
make install

Installation of the MpdRoot

  1. Go to the installation directory

Go to the directory where you want to install the MpdRoot software, e. g. home directory:

cd ~
  1. Clone GIT repository
  • Clone GIT repository (dev – developer version) with HTTPS (read-only access, e.g. for regular users)
git clone -b dev --recursive https://git.jinr.ru/nica/mpdroot.git
  • Clone GIT repository (dev – developer version) with SSH (for developers)
git clone -b dev --recursive git@git.jinr.ru:nica/mpdroot.git
  1. Installation procedure for MpdRoot:
  • Configure:
cd mpdroot
mkdir build
. SetEnv.sh
cd build
cmake ..

By default, in the SetEnv.sh file SIMPATH points to /opt/fairsoft/mpd/new, and FAIRROOTPATH – /opt/fairroot/mpd/new directories. If you installed FairSoft or FairRoot to another directory, please, change SIMPATH and FAIRROOTPATH variables in the file (“export SIMPATH=[your FairSoft install path]” and “export FAIRROOTPATH=[your FairRoot install path]”).

  • Build the framework:
make
. config.sh
  • Run “. config.sh” every time you make changes in programs

 

  1. Update your local branch from origin branch:
cd mpdroot
git pull --recurse-submodules