lammps/tools/singularity
Axel Kohlmeyer 1d8e9ca014
include gcc sanitizer libraries
2020-03-17 18:53:28 -04:00
..
README.md include info about ready-to-use images uploaded to the singularity library 2019-10-21 14:54:30 +02:00
centos7.def update singularity definition files 2019-10-21 11:29:08 +02:00
centos8.def include gcc sanitizer libraries 2020-03-17 18:53:28 -04:00
ubuntu16.04.def update singularity definition files 2019-10-21 11:29:08 +02:00
ubuntu18.04.def update singularity definition files 2019-10-21 11:29:08 +02:00

README.md

Singularity container definitions for compiling/testing LAMMPS

The *.def files in this folder can be used to build container images for Singularity suitable for compiling and testing LAMMPS on a variety of OS variants with support for most standard packages and building/spellchecking the manual. This allows to test and debug LAMMPS code on different OS variants than what is locally installed on your development workstation, e.g. when bugs are reported that can only be reproduced on a specific OS or with specific (mostly older) versions of tools, compilers, or libraries.

Ready-to-use container images built from these definition files are occasionally uploaded to the container library at sylabs.io. They can be found here: https://cloud.sylabs.io/library/lammps/default/lammps_development# and will be signed with the key fingerprint: EEA103764C6C633EDC8AC428D9B44E93BF0C375A

Here is a workflow for testing a compilation of LAMMPS with a locally built CentOS 7.x singularity container.

cd some/work/directory
git clone --depth 500  git://github.com/lammps/lammps.git lammps
mkdir build-centos7
cd build-centos7
sudo singularity build centos7.sif ../tools/singularity/centos7.def
singularity shell centos7.sif
cmake -C ../cmake/presets/most.cmake -D CMAKE_CXX_FLAGS="-O3 -g -fopenmp -std=c++11" ../cmake
make

And here is the equivalent workflow for testing a compilation of LAMMPS using a pre-built Ubuntu 18.04LTS singularity container.

cd some/work/directory
git clone --depth 500  git://github.com/lammps/lammps.git lammps
mkdir build-ubuntu18
cd build-ubuntu18
singularity pull library://lammps/default/lammps_development:ubuntu18.04
singularity shell lammps_development_ubuntu18.04.sif
cmake -C ../cmake/presets/most.cmake ../cmake
make
Currently available:
centos7.def CentOS 7.x with EPEL enabled
centos8.def CentOS 8.x with EPEL enabled
ubuntu16.04.def Ubuntu 16.04LTS with default MPI == OpenMPI
ubuntu18.04.def Ubuntu 18.04LTS with default MPI == OpenMPI