Stella is hosted on the stella github repository.
The simplest way of obtaining tstella on your system is to simply use the command line:
git clone stella
This will download stella from git into a new directory. From there, one needs to compile before running.
Stella now has (experimental) support for building with CMake.
All CMake options can be set on the command line with the syntax:
-D<variable>=value
. Boolean flags can use on/yes/true/1
or
off/no/false/0
to turn them on/off -- these options are
case-insensitive.
CMake has a built-in option for setting optimisation or debugging
flags: CMAKE_BUILD_TYPE
. If this is not set, by default stella will
use RelWithDebInfo
, which is the equivalent of -O2 -g
: moderate
optimisation with debug symbols. This doesn't turn on any runtime
checking, it only keeps names of functions, variables, etc. for error
messages and backtraces in the event of a crash.
Set -DCMAKE_BUILD_TYPE=Release
to turn on full optimisations.
Use -DCMAKE_BUILD_TYPE=Debug
to turn off optimisations and turn on
various compile- and run-time checks (depending on the compiler).
Stella has several optional dependencies, the location of which can be
specified by using the <package>_ROOT
variables. The list of
dependencies and their location variables are as follows:
MPIEXEC_EXECUTABLE
. This is
already automatically set to the current mpirun/mpiexec
in your
PATH
, so this shouldn't need to be set.LAPACK_ROOT
. On Cray systems that use the Cray Programming
Environment, this is automatically handled by the Cray Compiler
Environment and so is not user-controllable.FFTW_ROOT
. Stella also searches for the fftw-wisdom
executable in your PATH
as a first guessnetCDF_ROOT
for the C library, and netCDFFortran_ROOT
for the Fortran API. Stella searches for nc-config
and nf-config
in your PATH
and uses those to query the netCDF configurationAll of these dependencies, with the exception of MPI, can be turned on
or off with the STELLA_ENABLE_<name>
variable.