Specs
Specs are descriptors used to provide more information while installing spack packages. For example, package name, providing a specific version of the package using @
, compiler using %
and compiler options etc.
mpileaks @1.2:1.4 %gcc@4.7.5 +debug -qt target=x86_64 ^callpath @1.1 %gcc@4.7.2
Above command can be described as, install package mpileaks
of version in between 1.2
and 1.4
built using gcc
of version 4.7.5
for architecture x86_64
with debug
option enabled and Qt
option disabled. Additionally using dependency callpath
of version 1.1
built using gcc
of version 4.7.2
.
Spec consists of following pieces.
- package name which is mandatory.
- version using
@
which works for both package and compiler. %
to specify the compiler for both package and dependencies. It sould come just after the package name and whatever dependencies.+, -, or ~
variant specifiers.name=<value>
optional compiler flags.target=<value>
oros=<value>
for architecture information.^
to specify dependencies.