How to install MpdRoot or BmnRoot (new)

Before installing MpdRoot or BmnRoot make sure that the following packages are installed on your system!

  • Install packages needed for RedHat-based OS (eg, Scientific Linux):
  • 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 apt-get install subversion git make cmake 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 libpqxx3-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
  2. export INSTALLATION_PATH=/opt
  3. Install the FairSoft package
  4. The October 2017 release of FairSoft can be downloaded from GitHub:

    git clone fairsoft
    cd fairsoft
    git checkout oct17p1

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

    patch -p1 -i fairsoft_oct17p1.patch

    Installing fairsoft:

    # 1) GCC (on Linux)
    # 1) No Debug Info
    # 1) Yes (install Simulation engines and event generators)
    # 2) Internet (install G4 files from internet)
    # 2) No (not install the python bindings)
    # path: $INSTALLATION_PATH/fairsoft/install

    Follow the instructions on the screen. You can use options suggested above. ROOT 6 is required for MpdRoot and BmnRoot.

  5. Install the FairRoot environment
  6. The last release of FairRoot can be downloaded from GitHub:

    export SIMPATH=$INSTALLATION_PATH/fairsoft/install
    export PATH=$SIMPATH/bin:$PATH
    git clone fairroot
    cd fairroot
    git checkout v-17.10b

    Apply patch (to correct FairParAsciiFileIo class and wrong message on different compilers):

    patch -p1 -i fairsoft_jun19p1gcc10pg.patch

    Installing fairroot:

    mkdir build
    cd build
    make install

    Installing the main soft

  1. Go to the installation directory

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

    cd ~

  3. Clone GIT repository

  4. Register on JINR GitLab with mail, if you have not already done. Add SSH key (readme) to your profile to not enter the password every time you access.

    • Clone GIT repository with HTTPS (read-only access)
    • for MpdRoot (pro release branch. If you want the last developer version, add -b dev):

      git clone -b new_fair_structur --recursive

      for BmnRoot (pro release branch. If you want the last developer version, add -b dev):

      git clone -b new_fair_structure --recursive
    • Clone GIT repository with SSH (for developers)
    • for MpdRoot (dev developer branch):

      git clone -b new_fair_structur --recursive

      for BmnRoot (dev developer branch):

      git clone -b new_fair_structure --recursive

  5. Installation procedure for MpdRoot or BmnRoot:

    • Configure:
    • "cd mpdroot" or "cd bmnroot"
      mkdir build
      cd build
      cmake ..

      By default, in the file SIMPATH points to /opt/fairsoft/install, and FAIRROOTPATH – /opt/fairroot/install 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
    • Run “.” every time you run terminal to work with BmnRoot/MpdRoot

  6. Update your local branch from origin branch:

  7. "cd mpdroot" or "cd bmnroot"
    git pull --recurse-submodules