6. Extension of spack command in spack-stackΒΆ
This section describes the spack stack
extension of the spack
command, which simplifies the installation process. As for any other spack
command, help is available with spack stack -h
. The spack stack
extension has two subcommands, explained in the following.
spack stack [create|setup-meta-modules]
The spack stack create
command creates a new environment or a new container (add -h
for each of them for help):
spack stack create [env|ctr]
The full list of options for creating environments is:
spack stack create env [--template TEMPLATE] [--specs [SPECS [SPECS ...]]] [--name NAME] [--dir DIR] [--overwrite] [--packages PACKAGES] [--site SITE] [--prefix PREFIX] [--envs-file ENVS_FILE]
Here, TEMPLATE
corresponds to a pre-defined list of specs (see Section 4.3), SITE
to a pre-configured or a configurable site (see Section 3). For all other options, consult the output of spack stack create env -h
.
The full list of options for creating containers is:
spack stack create ctr [--template TEMPLATE] [--name NAME] [--dir DIR] [--overwrite] [--packages PACKAGES] container
TEMPLATE
is identical to creating environments, and container
corresponds to a pre-defined container recipe (see Section 4.4). For all other options, consult the output of spack stack create ctr -h
.
Following a successful creation of an environment (not a container), and the generation of the spack
lmod/tcl
module files via spack module [lmod|tcl] refresh
, the meta modules for compiler, Python interpreter and MPI library are generated with
spack stack setup-meta-modules
This step completes the environment generation and outputs a Core
directory to screen that must be added to the module path (module use .../Core
) as shown in Section 2.2.