How to install MpdRoot or BmnRoot

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 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 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. The May 2016 release of FairSoft can be downloaded from GitHub:
  2. cd /opt
    git clone https://github.com/FairRootGroup/FairSoft.git fairsoft
    cd fairsoft
    git checkout may16p1
    
  3. Apply patch to support GCC without C++11 and XRootD compilation with GCC 5:
    wget http://mpd.jinr.ru/data/fairsoft_may16p1.patch
    patch -p1 -i fairsoft_may16p1.patch
    
  4. Installing fairsoft:
  5. ./configure.sh 
    

    Follow the instructions on the screen. It’s preferred to install binaries and libraries to “/opt/fairsoft/install” directory. ROOT 6 is not supported by MpdRoot and BmnRoot now.

    Installing the main soft

  1. Clone GIT repository

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

      git clone --recursive https://git.jinr.ru/nica/mpdroot.git
      

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

      git clone --recursive https://git.jinr.ru/nica/bmnroot.git
      
    • Clone GIT repository for developers with SSH
    • Register on the site https://git.jinr.ru with @jinr.ru mail and add SSH key https://git.jinr.ru/help/ssh/README to your profile – https://git.jinr.ru/profile/keys/new.

      for MpdRoot (dev developer branch):

      git clone -b dev --recursive git@git.jinr.ru:nica/mpdroot.git
      

      for BmnRoot (dev developer branch):

      git clone -b dev --recursive git@git.jinr.ru:nica/bmnroot.git
      

  2. Installation procedure for MpdRoot or BmnRoot:

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

      By default, SetEnv.sh points to /opt/fairsoft/install directory. If you installed FAIRSOFT to another directory, please, change only SIMPATH variable in the file. For example, on the nc-farm, change the string to “export SIMPATH=/opt/fairsoft_root5/install” to use FairSoft with ROOT 5, or “export SIMPATH=/opt/fairsoft_root6/install” for FairSoft with ROOT 6.

    • Build the framework:
    • make
      . config.sh
      
    • Run “. config.sh” every time you run terminal to work with BmnRoot/MpdRoot

  3. Update your local branch from origin branch:

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