module purge module load intel/15.0.6.233 module load openmpi/1.6.5-ifort module load hdf5/1.8.18-parallel-ifort module load netcdf4/4.4.1.1-parallel-ifort module load python/2.7-anaconda # If not done yet, certain python packages must be installed in a dynamico-only conda environment : # conda create -n dynamico python # source activate dynamico # pip install scipy mpi4py jinja2 matplotlib cython cmake # netCDF4 must be installed manually in order to use the netCDF library from the modules (requires Cython, see above) # for this download and unpack # https://pypi.python.org/packages/6a/37/49fd7cc21af0fb173e40de5e15f7fdd48d521429922a90347219c77b0c36/netCDF4-1.2.9.tar.gz#md5=e320491d52c42e937e6df47b56a2579c # then # python setup.py build # python setup.py install # CICLAD does not have a parmetis module # compiling parmetis uses cmake, installed above using pip because the system-wide cmake might not work with the modules # then download parmetis from # http://glaros.dtc.umn.edu/gkhome/fetch/sw/parmetis/parmetis-4.0.3.tar.gz # unpack, follow workaround given in # https://stackoverflow.com/questions/35058709/building-shared-parmetis-4-0-3 # then # make config shared=1 prefix=$HOME/.conda/envs/dynamico # make install # manually install libmetis.so and metis.h ... # cp $(find . -name 'libmetis.so') $HOME/.conda/envs/dynamico/lib/ # cp $(find . -name 'metis.h') $HOME/.conda/envs/dynamico/include/ source activate dynamico PARMETIS_CFLAGS="-I$HOME/.conda/envs/dynamico/include" PARMETIS_LDFLAGS="-L$HOME/.conda/envs/dynamico/lib" export NETCDF_LDFLAGS="$(nf-config --flibs) -lhdf5 -lz -ldl -lm" # check that packages work for x in netCDF4 mpi4py numpy jinja2 ; do python -c "import $x" ; done python -c "import ctypes ; parmetis=ctypes.cdll.LoadLibrary('libparmetis.so')" export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$HOME/.conda/envs/dynamico/lib BASEDIR=$(dirname ${BASH_SOURCE[0]}) . $BASEDIR/linux.env