We finally managed to compile shore. It was a bit envolved because of a bug in the boost library and an error in a source header file of shore which we had to find out and correct.

The steps to reproduce the installation are:

1)

module load intel/15.0.2

export CPLUS_INCLUDE_PATH="/opt/sw/x86_64/glibc-2.12/ivybridge-ep/boost/1.58.0/intel-15.0.2/include:/opt/sw/x86_64/glibc-2.12/ivybridge-ep/gsl/1.16/intel-14.0.2/include:/opt/sw/x86_64/glibc-2.12/ivybridge-ep/xz/5.2.1/intel-15.0.2/include"

export LIBRARY_PATH="/opt/sw/x86_64/glibc-2.12/ivybridge-ep/boost/1.58.0/intel-15.0.2/lib:/opt/sw/x86_64/glibc-2.12/ivybridge-ep/gsl/1.16/intel-14.0.2/lib:/opt/sw/x86_64/glibc-2.12/ivybridge-ep/xz/5.2.1/intel-15.0.2/lib"

CC=icc CXX=icpc MPICXX=mpiicpc MPICC=mpiicc
CFLAGGS="-I/opt/sw/x86_64/glibc-2.12/ivybridge-ep/boost/1.58.0/intel-15.0.2/include/boost"
CXXFLAGS="-I/opt/sw/x86_64/glibc-2.12/ivybridge-ep/boost/1.58.0/intel-15.0.2/include/boost"
LDFLAGS="-L/opt/sw/x86_64/glibc-2.12/ivybridge-ep/xz/5.2.1/intel-15.0.2/lib
-L/opt/sw/x86_64/glibc-2.12/ivybridge-ep/boost/1.58.0/intel-15.0.2/lib"
./configure --with-mpi

2) Then modify the file ./src/CoreLib/shore/processing/method_check.hpp. There you need to change the definition “private” to “public” in line 34: This is how it should look (lines 32 - 51:

class member_check_defs
{
public:

class cannot_mix
{
char m;
};

class can_mix
{
cannot_mix m[2];
};

template<typename U, U t>
class instantiate_test
{};

member_check_defs();
};

3) Then type

make
• doku/shore.txt