ROSS can now be installed using the Spack package manager.

Getting Spack

If you don’t have Spack yet, you can quickly get started with the following commands (but see their documentation for much more info):

$ git clone https://github.com/spack/spack.git
$ export SPACK_ROOT=/path/to/spack
$ . $SPACK_ROOT/share/spack/setup-env.sh
$ spack bootstrap
$ source $SPACK_ROOT/share/spack/setup-env.sh

Install ROSS

Now, to get ROSS installed using Spack:

$ spack install ross ^mpich
$ spack load ross

That’s it! The install command above tells Spack to use mpich for the MPI implementation, though if you leave it out, Spack will choose an MPI library for you. Now you’ll be able to find the include and lib directories for ROSS at something like $SPACK_ROOT/opt/spack/.... The build output from the spack install command above will give the path.

Note: For right now, only x86_64 builds of ROSS can be done using Spack. For other architectures, please use the manual build instructions.

Use externally installed MPI

If you already have MPI installed and want to use that version, instead of Spack installing it, you’ll need to create the file $HOME/.spack/packages.yaml with the following:

packages:
  mpich:
    paths:
      mpich@3.2.0%gcc@5.4.1: /usr/local/mpich-3.2
    buildable: False
  all:
    providers:
      mpi: [mpich]

This will have Spack default to using mpich3 for MPI. Of course, you’ll need to change version numbers and the path as necessary for your system. Now spack install ross and spack load ross should be all you need to do.