Building on Scientific Linux 7¶
Synergia can be built on the Scientific Linux 7 (or CentOS 7) platform using the following steps.
The best way to install Synergia on Scientific Linux 7 is to install most of the dependency packages from rpms. Some of the packages come from the
epel repository, so install that first:
sudo yum install epel-releaseInstall packages:
sudo yum install git cmake bzip2 gcc-c++ boost-devel gsl-devel python-devel hdf5-devel numpy openmpi-devel mpi4py-openmpi pyparsing python-tables
If you will be using interactive tools, also install:
sudo yum install python-matplotlib
You need to load the
mpi module before building. Give the command:
module load mpi
If that doesn't work, log out and log back in again. Then cd back into the
synergia2-devel directory and continue.
Clone and bootstrap the contract:
git clone -b devel http://bitbucket.org/fnalacceleratormodeling/contract-synergia2 synergia2-devel cd synergia2-devel ./bootstrap
Then start the build:
On Scientific Linux 7.3, the libfabrics package is broken so Synergia scripts will hang for 15 seconds when you try to run them. This won't be fixed until SL 7.4. See https://bugzilla.redhat.com/show_bug.cgi?id=1408316. The solution is to build and install an updated libfabrics package from the project page at https://github.com/ofiwg/libfabric/releases. The current latest release as of 2017-08-16 is libfabrics-1.5.0.
To build and install this, become root with
sudo -i or
cd /root/rpmbuild/SOURCES curl https://github.com/ofiwg/libfabric/releases/libfabric-1.5.0.tar.bz2 -o libfabric-1.5.0.tar.bz2 rpmbuild -ta libfabric-1.5.0.tar.bz2 cd ../RPMS/x86_64 yum install libfabric-1.5*.el7.rpm
If the versions change, adjust the instructions accordingly. Alternatively, download and install libfabric-1.5.0 rpm below.