Basic Installation Tutorial¶
This tutorial will guide you through the process of installing
software using Spack. We will first cover the spack install
command,
focusing on the power of the spec syntax and the flexibility it gives
to users. We will also cover the spack find
command for viewing
installed packages and the spack uninstall
command for uninstalling
them. Finally, we will touch on how Spack manages compilers,
especially as it relates to using Spack-built compilers within Spack.
We will include full output from all of the commands demonstrated,
although we will frequently call attention to only small portions of
that output (or merely to the fact that it succeeded). The provided
output is all from an Ubuntu 18.04 Docker image.
Installing Spack¶
Spack works out of the box. Simply clone Spack to get going. We will clone Spack and immediately check out the most recent release, v0.19.
$ git clone --depth=100 --branch=releases/v0.19 https://github.com/spack/spack.git ~/spack
Cloning into '/home/spack/spack'...
remote: Enumerating objects: 18414, done.K
remote: Counting objects: 100% (18414/18414), done.K
remote: Compressing objects: 100% (9620/9620), done.K
remote:nTotale18414 (delta82328),4reused015340i(delta.2035),/pack-reused 0
Receiving objects: 100% (18414/18414), 12.50 MiB | 21.69 MiB/s, done.
Resolving deltas: 100% (2328/2328), done.
$ cd ~/spack
Next, add Spack to your path. Spack has some nice command-line
integration tools, so instead of simply prepending to your PATH
variable, source the Spack setup script.
$ . share/spack/setup-env.sh
You’re good to go!
What is in Spack?¶
The spack list
command shows available packages.
$ spack list
3dtk guacamole-client opencl-c-headers py-functools32 py-stopit r-rprojroot
3proxy guacamole-server opencl-clhpp py-funcy py-storm r-rpsychi
7zip guidance opencl-headers py-fury py-stratify r-rrblup
abacus guile opencoarrays py-fusepy py-stsci-distutils r-rrcov
abduco gunrock opencv py-future py-submitit r-rrpp
The spack list
command can also take a query string. Spack
automatically adds wildcards to both ends of the string, or you
can add your own wildcards. For example, we can view all available
Python packages.
$ spack list 'py-*'
py-3to2 py-biopandas py-easybuild-easyconfigs py-hvac py-moviepy py-py py-python-utils py-sqlalchemy-stubs
py-4suite-xml py-biopython py-easybuild-framework py-hypercorn py-mpi4py py-py-cpuinfo py-python-xlib py-sqlalchemy-utils
py-abcpy py-bitarray py-eccodes py-hyperframe py-mpld3 py-py-spy py-python-xmp-toolkit py-sqlparse
py-abipy py-bitshuffle py-ecdsa py-hyperlink py-mplhep py-py2bit py-python3-xlib py-srsly
py-about-time py-bitstring py-ecos py-hyperopt py-mplhep-data py-py2cairo py-pythonqwt py-sshtunnel
Installing Packages¶
Installing a package with Spack is very simple. To install a piece of
software, simply type spack install <package_name>
.
$ spack install zlib
==> Bootstrapping clingo from pre-built binaries
==> Fetching https://mirror.spack.io/bootstrap/github-actions/v0.4/build_cache/linux-centos7-x86_64-gcc-10.2.1-clingo-bootstrap-spack-prqkzynv2nwko5mktitebgkeumuxkveu.spec.json
==> Fetching https://mirror.spack.io/bootstrap/github-actions/v0.4/build_cache/linux-centos7-x86_64/gcc-10.2.1/clingo-bootstrap-spack/linux-centos7-x86_64-gcc-10.2.1-clingo-bootstrap-spack-prqkzynv2nwko5mktitebgkeumuxkveu.spack
==> Installing "clingo-bootstrap@spack%gcc@10.2.1~docs~ipo+python+static_libstdcpp build_type=Release arch=linux-centos7-x86_64" from a buildcache
==> Installing zlib-1.2.13-2hfr5rbzefrxf6t6kv4trbsl63puaza6
==> No binary for zlib-1.2.13-2hfr5rbzefrxf6t6kv4trbsl63puaza6 found: installing from source
==> Fetching https://mirror.spack.io/_source-cache/archive/b3/b3a24de97a8fdbc835b9833169501030b8977031bcb54b3b3ac13740f846ab30.tar.gz
==> No patches needed for zlib
==> zlib: Executing phase: 'edit'
==> zlib: Executing phase: 'build'
==> zlib: Executing phase: 'install'
==> zlib: Successfully installed zlib-1.2.13-2hfr5rbzefrxf6t6kv4trbsl63puaza6
Fetch: 0.34s. Build: 0.95s. Total: 1.30s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/zlib-1.2.13-2hfr5rbzefrxf6t6kv4trbsl63puaza6
Spack can install software either from source or from a binary cache. Packages in the binary cache are signed with GPG for security. For the tutorial we have prepared a binary cache so you don’t have to wait on slow compilation from source. To be able to install from the binary cache, we will need to configure Spack with the location of the binary cache and trust the GPG key that the binary cache was signed with.
$ spack mirror add tutorial /mirror
$ spack buildcache keys --install --trust
==> Fetching file:///mirror/build_cache/_pgp/78F3726939CA1B94893B66E8BC86F6FB94429164.pub
gpg: key A8E0CA3C1C2ADA2F: 7 signatures not checked due to missing keys
gpg: key A8E0CA3C1C2ADA2F: public key "Spack Project Official Binaries <maintainers@spack.io>" imported
gpg: Total number processed: 1
gpg: imported: 1
gpg: no ultimately trusted keys found
gpg: inserting ownertrust of 6
You’ll learn more about configuring Spack later in the tutorial, but
for now you will be able to install the rest of the packages in the
tutorial from a binary cache using the same spack install
command. By default this will install the binary cached version if it
exists and fall back on installing from source if it does not.
Spack’s spec syntax is the interface by which we can request specific
configurations of the package. The %
sigil is used to specify
compilers.
$ spack install zlib %clang
==> Installing zlib-1.2.13-fdbomoa6xopqvfi4a7jvad27yinnw47a
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-clang-7.0.0-zlib-1.2.13-fdbomoa6xopqvfi4a7jvad27yinnw47a.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/clang-7.0.0/zlib-1.2.13/linux-ubuntu18.04-x86_64-clang-7.0.0-zlib-1.2.13-fdbomoa6xopqvfi4a7jvad27yinnw47a.spack
==> Extracting zlib-1.2.13-fdbomoa6xopqvfi4a7jvad27yinnw47a from binary cache
==> zlib: Successfully installed zlib-1.2.13-fdbomoa6xopqvfi4a7jvad27yinnw47a
Fetch: 0.10s. Build: 0.23s. Total: 0.33s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/clang-7.0.0/zlib-1.2.13-fdbomoa6xopqvfi4a7jvad27yinnw47a
Note that this installation is located separately from the previous one. We will discuss this in more detail later, but this is part of what allows Spack to support arbitrarily versioned software.
You can check for particular versions before requesting them. We will
use the spack versions
command to see the available versions, and then
install a different version of zlib
.
$ spack versions zlib
==> Safe versions (already checksummed):
1.2.13 1.2.12 1.2.11 1.2.8 1.2.3
==> Remote versions (not yet checksummed):
1.2.10 1.2.7.2 1.2.6.1 1.2.5.2 1.2.4.5 1.2.4.2 1.2.3.9 1.2.3.6 1.2.3.3 1.2.2.4 1.2.2.1 1.2.1.1 1.2.0.7 1.2.0.4 1.2.0.1 1.1.3 1.1.0 1.0.7 1.0.4 1.0-pre 0.94 0.91 0.9
1.2.9 1.2.7.1 1.2.6 1.2.5.1 1.2.4.4 1.2.4.1 1.2.3.8 1.2.3.5 1.2.3.2 1.2.2.3 1.2.2 1.2.1 1.2.0.6 1.2.0.3 1.2.0 1.1.2 1.0.9 1.0.6 1.0.2 0.99 0.93 0.79 0.8
1.2.7.3 1.2.7 1.2.5.3 1.2.5 1.2.4.3 1.2.4 1.2.3.7 1.2.3.4 1.2.3.1 1.2.2.2 1.2.1.2 1.2.0.8 1.2.0.5 1.2.0.2 1.1.4 1.1.1 1.0.8 1.0.5 1.0.1 0.95 0.92 0.71
The @
sigil is used to specify versions, both of packages and of
compilers.
$ spack install zlib@1.2.8
==> Installing zlib-1.2.8-tolklcfv6vhiaoyvwr7vbbakns4mawum
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-zlib-1.2.8-tolklcfv6vhiaoyvwr7vbbakns4mawum.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/zlib-1.2.8/linux-ubuntu18.04-x86_64-gcc-7.5.0-zlib-1.2.8-tolklcfv6vhiaoyvwr7vbbakns4mawum.spack
==> Extracting zlib-1.2.8-tolklcfv6vhiaoyvwr7vbbakns4mawum from binary cache
==> zlib: Successfully installed zlib-1.2.8-tolklcfv6vhiaoyvwr7vbbakns4mawum
Fetch: 0.08s. Build: 0.22s. Total: 0.31s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/zlib-1.2.8-tolklcfv6vhiaoyvwr7vbbakns4mawum
$ spack install zlib %gcc@6.5.0
==> Installing zlib-1.2.13-6izan4fn2f6zaycyq2iygye5b4lmfbdg
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-6.5.0-zlib-1.2.13-6izan4fn2f6zaycyq2iygye5b4lmfbdg.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-6.5.0/zlib-1.2.13/linux-ubuntu18.04-x86_64-gcc-6.5.0-zlib-1.2.13-6izan4fn2f6zaycyq2iygye5b4lmfbdg.spack
==> Extracting zlib-1.2.13-6izan4fn2f6zaycyq2iygye5b4lmfbdg from binary cache
==> zlib: Successfully installed zlib-1.2.13-6izan4fn2f6zaycyq2iygye5b4lmfbdg
Fetch: 0.08s. Build: 0.23s. Total: 0.31s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-6.5.0/zlib-1.2.13-6izan4fn2f6zaycyq2iygye5b4lmfbdg
The spec syntax also includes compiler flags. Spack accepts
cppflags
, cflags
, cxxflags
, fflags
, ldflags
, and
ldlibs
parameters. The values of these fields must be quoted on
the command line if they include spaces. These values are injected
into the compile line automatically by the Spack compiler wrappers.
$ spack install zlib@1.2.8 cppflags=-O3
==> Installing zlib-1.2.8-zqdhyiyvjrx6lhddpgv4h2nsysowhjxm
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-zlib-1.2.8-zqdhyiyvjrx6lhddpgv4h2nsysowhjxm.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/zlib-1.2.8/linux-ubuntu18.04-x86_64-gcc-7.5.0-zlib-1.2.8-zqdhyiyvjrx6lhddpgv4h2nsysowhjxm.spack
==> Extracting zlib-1.2.8-zqdhyiyvjrx6lhddpgv4h2nsysowhjxm from binary cache
==> zlib: Successfully installed zlib-1.2.8-zqdhyiyvjrx6lhddpgv4h2nsysowhjxm
Fetch: 0.10s. Build: 0.23s. Total: 0.32s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/zlib-1.2.8-zqdhyiyvjrx6lhddpgv4h2nsysowhjxm
The spack find
command is used to query installed packages. Note that
some packages appear identical with the default output. The -l
flag
shows the hash of each package, and the -f
flag shows any non-empty
compiler flags of those packages.
$ spack find
-- linux-ubuntu18.04-x86_64 / clang@7.0.0 -----------------------
zlib@1.2.13
-- linux-ubuntu18.04-x86_64 / gcc@6.5.0 -------------------------
zlib@1.2.13
-- linux-ubuntu18.04-x86_64 / gcc@7.5.0 -------------------------
zlib@1.2.8 zlib@1.2.8 zlib@1.2.13
==> 5 installed packages
$ spack find -lf
-- linux-ubuntu18.04-x86_64 / clang@7.0.0 -----------------------
fdbomoa zlib@1.2.13%clang
-- linux-ubuntu18.04-x86_64 / gcc@6.5.0 -------------------------
6izan4f zlib@1.2.13%gcc
-- linux-ubuntu18.04-x86_64 / gcc@7.5.0 -------------------------
tolklcf zlib@1.2.8%gcc zqdhyiy zlib@1.2.8%gcc cppflags="-O3" 2hfr5rb zlib@1.2.13%gcc
==> 5 installed packages
Spack generates a hash for each spec. This hash is a function of the full provenance of the package, so any change to the spec affects the hash. Spack uses this value to compare specs and to generate unique installation directories for every combinatorial version. As we move into more complicated packages with software dependencies, we can see that Spack reuses existing packages to satisfy a dependency. By default, Spack tries hard to reuse existing installations as dependencies, either from a local store or from configured remote buildcaches. This minimizes unwanted rebuilds of common dependencies, in particular if you update Spack frequently.
$ spack install tcl
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/zlib-1.2.13-2hfr5rbzefrxf6t6kv4trbsl63puaza6
==> Installing tcl-8.6.12-v63n6wxe4a45dbmmpqbmjpfio3z7liej
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-tcl-8.6.12-v63n6wxe4a45dbmmpqbmjpfio3z7liej.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/tcl-8.6.12/linux-ubuntu18.04-x86_64-gcc-7.5.0-tcl-8.6.12-v63n6wxe4a45dbmmpqbmjpfio3z7liej.spack
==> Extracting tcl-8.6.12-v63n6wxe4a45dbmmpqbmjpfio3z7liej from binary cache
==> tcl: Successfully installed tcl-8.6.12-v63n6wxe4a45dbmmpqbmjpfio3z7liej
Fetch: 0.12s. Build: 1.09s. Total: 1.21s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/tcl-8.6.12-v63n6wxe4a45dbmmpqbmjpfio3z7liej
Dependencies can be explicitly requested using the ^
sigil. Note that
the spec syntax is recursive. Anything we could specify about the
top-level package, we can also specify about a dependency using ^
.
$ spack install tcl ^zlib@1.2.8 %clang
==> Installing zlib-1.2.8-2xcmtth3d7fjr56rn7hsvsfzwznvjrrd
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-clang-7.0.0-zlib-1.2.8-2xcmtth3d7fjr56rn7hsvsfzwznvjrrd.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/clang-7.0.0/zlib-1.2.8/linux-ubuntu18.04-x86_64-clang-7.0.0-zlib-1.2.8-2xcmtth3d7fjr56rn7hsvsfzwznvjrrd.spack
==> Extracting zlib-1.2.8-2xcmtth3d7fjr56rn7hsvsfzwznvjrrd from binary cache
==> zlib: Successfully installed zlib-1.2.8-2xcmtth3d7fjr56rn7hsvsfzwznvjrrd
Fetch: 0.10s. Build: 0.23s. Total: 0.33s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/clang-7.0.0/zlib-1.2.8-2xcmtth3d7fjr56rn7hsvsfzwznvjrrd
==> Installing tcl-8.6.12-36jwtbo5qcqulyxs5s43k774ty2ewu4e
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-clang-7.0.0-tcl-8.6.12-36jwtbo5qcqulyxs5s43k774ty2ewu4e.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/clang-7.0.0/tcl-8.6.12/linux-ubuntu18.04-x86_64-clang-7.0.0-tcl-8.6.12-36jwtbo5qcqulyxs5s43k774ty2ewu4e.spack
==> Extracting tcl-8.6.12-36jwtbo5qcqulyxs5s43k774ty2ewu4e from binary cache
==> tcl: Successfully installed tcl-8.6.12-36jwtbo5qcqulyxs5s43k774ty2ewu4e
Fetch: 0.03s. Build: 1.17s. Total: 1.21s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/clang-7.0.0/tcl-8.6.12-36jwtbo5qcqulyxs5s43k774ty2ewu4e
Packages can also be referred to from the command line by their package
hash. Using the spack find -lf
command earlier we saw that the hash
of our optimized installation of zlib (cppflags="-O3"
) began with
zqd
. We can now explicitly build with that package without typing
the entire spec, by using the /
sigil to refer to it by hash. As with
other tools like Git, you do not need to specify an entire hash on the
command line. You can specify just enough digits to identify a hash
uniquely. If a hash prefix is ambiguous (i.e., two or more installed
packages share the prefix) then Spack will report an error.
$ spack install tcl ^/zqd
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/zlib-1.2.8-zqdhyiyvjrx6lhddpgv4h2nsysowhjxm
==> Installing tcl-8.6.12-rakrbasefv2odpemtbrfn2qrbpeq4jip
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-tcl-8.6.12-rakrbasefv2odpemtbrfn2qrbpeq4jip.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/tcl-8.6.12/linux-ubuntu18.04-x86_64-gcc-7.5.0-tcl-8.6.12-rakrbasefv2odpemtbrfn2qrbpeq4jip.spack
==> Extracting tcl-8.6.12-rakrbasefv2odpemtbrfn2qrbpeq4jip from binary cache
==> tcl: Successfully installed tcl-8.6.12-rakrbasefv2odpemtbrfn2qrbpeq4jip
Fetch: 0.10s. Build: 1.09s. Total: 1.19s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/tcl-8.6.12-rakrbasefv2odpemtbrfn2qrbpeq4jip
The spack find
command can also take a -d
flag, which can show
dependency information. Note that each package has a top-level entry,
even if it also appears as a dependency.
$ spack find -ldf
-- linux-ubuntu18.04-x86_64 / clang@7.0.0 -----------------------
36jwtbo tcl@8.6.12%clang
2xcmtth zlib@1.2.8%clang
2xcmtth zlib@1.2.8%clang
fdbomoa zlib@1.2.13%clang
-- linux-ubuntu18.04-x86_64 / gcc@6.5.0 -------------------------
6izan4f zlib@1.2.13%gcc
-- linux-ubuntu18.04-x86_64 / gcc@7.5.0 -------------------------
rakrbas tcl@8.6.12%gcc
zqdhyiy zlib@1.2.8%gcc cppflags="-O3"
v63n6wx tcl@8.6.12%gcc
2hfr5rb zlib@1.2.13%gcc
tolklcf zlib@1.2.8%gcc
zqdhyiy zlib@1.2.8%gcc cppflags="-O3"
2hfr5rb zlib@1.2.13%gcc
==> 9 installed packages
Let’s move on to slightly more complicated packages. HDF5 is a good example of a more complicated package, with an MPI dependency. If we install it “out of the box,” it will build with OpenMPI.
$ spack install hdf5
==> Installing pkgconf-1.8.0-k2lfw6fht6zvsfihvx3avihboi3uv455
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-pkgconf-1.8.0-k2lfw6fht6zvsfihvx3avihboi3uv455.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/pkgconf-1.8.0/linux-ubuntu18.04-x86_64-gcc-7.5.0-pkgconf-1.8.0-k2lfw6fht6zvsfihvx3avihboi3uv455.spack
==> Extracting pkgconf-1.8.0-k2lfw6fht6zvsfihvx3avihboi3uv455 from binary cache
==> pkgconf: Successfully installed pkgconf-1.8.0-k2lfw6fht6zvsfihvx3avihboi3uv455
Fetch: 0.15s. Build: 0.25s. Total: 0.40s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/pkgconf-1.8.0-k2lfw6fht6zvsfihvx3avihboi3uv455
==> Installing ca-certificates-mozilla-2022-10-11-aurd37jjebxaqzs73saip5v6hgfu3foj
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-ca-certificates-mozilla-2022-10-11-aurd37jjebxaqzs73saip5v6hgfu3foj.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/ca-certificates-mozilla-2022-10-11/linux-ubuntu18.04-x86_64-gcc-7.5.0-ca-certificates-mozilla-2022-10-11-aurd37jjebxaqzs73saip5v6hgfu3foj.spack
==> Extracting ca-certificates-mozilla-2022-10-11-aurd37jjebxaqzs73saip5v6hgfu3foj from binary cache
==> ca-certificates-mozilla: Successfully installed ca-certificates-mozilla-2022-10-11-aurd37jjebxaqzs73saip5v6hgfu3foj
Fetch: 0.03s. Build: 0.23s. Total: 0.27s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/ca-certificates-mozilla-2022-10-11-aurd37jjebxaqzs73saip5v6hgfu3foj
==> Installing berkeley-db-18.1.40-53fb72wziswrec6tkbjpowshkul2nsk4
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-berkeley-db-18.1.40-53fb72wziswrec6tkbjpowshkul2nsk4.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/berkeley-db-18.1.40/linux-ubuntu18.04-x86_64-gcc-7.5.0-berkeley-db-18.1.40-53fb72wziswrec6tkbjpowshkul2nsk4.spack
==> Extracting berkeley-db-18.1.40-53fb72wziswrec6tkbjpowshkul2nsk4 from binary cache
==> berkeley-db: Successfully installed berkeley-db-18.1.40-53fb72wziswrec6tkbjpowshkul2nsk4
Fetch: 0.03s. Build: 0.31s. Total: 0.34s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/berkeley-db-18.1.40-53fb72wziswrec6tkbjpowshkul2nsk4
==> Installing libiconv-1.16-ltvovvvjgmlvy4m2pn365cy6p5dysajq
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-libiconv-1.16-ltvovvvjgmlvy4m2pn365cy6p5dysajq.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/libiconv-1.16/linux-ubuntu18.04-x86_64-gcc-7.5.0-libiconv-1.16-ltvovvvjgmlvy4m2pn365cy6p5dysajq.spack
==> Extracting libiconv-1.16-ltvovvvjgmlvy4m2pn365cy6p5dysajq from binary cache
==> libiconv: Successfully installed libiconv-1.16-ltvovvvjgmlvy4m2pn365cy6p5dysajq
Fetch: 0.03s. Build: 0.28s. Total: 0.31s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/libiconv-1.16-ltvovvvjgmlvy4m2pn365cy6p5dysajq
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/zlib-1.2.13-2hfr5rbzefrxf6t6kv4trbsl63puaza6
==> Installing libsigsegv-2.13-e262sf6ptgnmyu7zkflzp3ycbdfqz7hf
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-libsigsegv-2.13-e262sf6ptgnmyu7zkflzp3ycbdfqz7hf.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/libsigsegv-2.13/linux-ubuntu18.04-x86_64-gcc-7.5.0-libsigsegv-2.13-e262sf6ptgnmyu7zkflzp3ycbdfqz7hf.spack
==> Extracting libsigsegv-2.13-e262sf6ptgnmyu7zkflzp3ycbdfqz7hf from binary cache
==> libsigsegv: Successfully installed libsigsegv-2.13-e262sf6ptgnmyu7zkflzp3ycbdfqz7hf
Fetch: 0.03s. Build: 0.24s. Total: 0.26s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/libsigsegv-2.13-e262sf6ptgnmyu7zkflzp3ycbdfqz7hf
==> Installing util-macros-1.19.3-ao5w53rpwhgfruk2zrqcehlov5slestd
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-util-macros-1.19.3-ao5w53rpwhgfruk2zrqcehlov5slestd.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/util-macros-1.19.3/linux-ubuntu18.04-x86_64-gcc-7.5.0-util-macros-1.19.3-ao5w53rpwhgfruk2zrqcehlov5slestd.spack
==> Extracting util-macros-1.19.3-ao5w53rpwhgfruk2zrqcehlov5slestd from binary cache
==> util-macros: Successfully installed util-macros-1.19.3-ao5w53rpwhgfruk2zrqcehlov5slestd
Fetch: 0.03s. Build: 0.23s. Total: 0.26s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/util-macros-1.19.3-ao5w53rpwhgfruk2zrqcehlov5slestd
==> Installing xz-5.2.7-nrwxythffgfumjv7skmgdjtxaunlmqau
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-xz-5.2.7-nrwxythffgfumjv7skmgdjtxaunlmqau.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/xz-5.2.7/linux-ubuntu18.04-x86_64-gcc-7.5.0-xz-5.2.7-nrwxythffgfumjv7skmgdjtxaunlmqau.spack
==> Extracting xz-5.2.7-nrwxythffgfumjv7skmgdjtxaunlmqau from binary cache
==> xz: Successfully installed xz-5.2.7-nrwxythffgfumjv7skmgdjtxaunlmqau
Fetch: 0.03s. Build: 0.29s. Total: 0.32s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/xz-5.2.7-nrwxythffgfumjv7skmgdjtxaunlmqau
==> Installing zstd-1.5.2-fprmzmoubdjdr663rprctp2tuqiv5apu
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-zstd-1.5.2-fprmzmoubdjdr663rprctp2tuqiv5apu.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/zstd-1.5.2/linux-ubuntu18.04-x86_64-gcc-7.5.0-zstd-1.5.2-fprmzmoubdjdr663rprctp2tuqiv5apu.spack
==> Extracting zstd-1.5.2-fprmzmoubdjdr663rprctp2tuqiv5apu from binary cache
==> zstd: Successfully installed zstd-1.5.2-fprmzmoubdjdr663rprctp2tuqiv5apu
Fetch: 0.03s. Build: 0.27s. Total: 0.30s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/zstd-1.5.2-fprmzmoubdjdr663rprctp2tuqiv5apu
==> Installing ncurses-6.3-zcuawlif55qhuknvbk4jez7xjcxhnydf
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-ncurses-6.3-zcuawlif55qhuknvbk4jez7xjcxhnydf.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/ncurses-6.3/linux-ubuntu18.04-x86_64-gcc-7.5.0-ncurses-6.3-zcuawlif55qhuknvbk4jez7xjcxhnydf.spack
==> Extracting ncurses-6.3-zcuawlif55qhuknvbk4jez7xjcxhnydf from binary cache
==> ncurses: Successfully installed ncurses-6.3-zcuawlif55qhuknvbk4jez7xjcxhnydf
Fetch: 0.04s. Build: 0.75s. Total: 0.79s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/ncurses-6.3-zcuawlif55qhuknvbk4jez7xjcxhnydf
==> Installing diffutils-3.8-c3uhkcjt7tagz2djrd6r2b6b3c2tia3s
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-diffutils-3.8-c3uhkcjt7tagz2djrd6r2b6b3c2tia3s.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/diffutils-3.8/linux-ubuntu18.04-x86_64-gcc-7.5.0-diffutils-3.8-c3uhkcjt7tagz2djrd6r2b6b3c2tia3s.spack
==> Extracting diffutils-3.8-c3uhkcjt7tagz2djrd6r2b6b3c2tia3s from binary cache
==> diffutils: Successfully installed diffutils-3.8-c3uhkcjt7tagz2djrd6r2b6b3c2tia3s
Fetch: 0.03s. Build: 0.28s. Total: 0.31s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/diffutils-3.8-c3uhkcjt7tagz2djrd6r2b6b3c2tia3s
==> Installing pigz-2.7-wod35nye4qcrkbopr23zoy5qb3ywp3v3
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-pigz-2.7-wod35nye4qcrkbopr23zoy5qb3ywp3v3.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/pigz-2.7/linux-ubuntu18.04-x86_64-gcc-7.5.0-pigz-2.7-wod35nye4qcrkbopr23zoy5qb3ywp3v3.spack
==> Extracting pigz-2.7-wod35nye4qcrkbopr23zoy5qb3ywp3v3 from binary cache
==> pigz: Successfully installed pigz-2.7-wod35nye4qcrkbopr23zoy5qb3ywp3v3
Fetch: 0.03s. Build: 0.24s. Total: 0.27s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/pigz-2.7-wod35nye4qcrkbopr23zoy5qb3ywp3v3
==> Installing libxml2-2.10.1-4aq5aj2n5u2n3dbrb76pnhoil6tv3e4e
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-libxml2-2.10.1-4aq5aj2n5u2n3dbrb76pnhoil6tv3e4e.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/libxml2-2.10.1/linux-ubuntu18.04-x86_64-gcc-7.5.0-libxml2-2.10.1-4aq5aj2n5u2n3dbrb76pnhoil6tv3e4e.spack
==> Extracting libxml2-2.10.1-4aq5aj2n5u2n3dbrb76pnhoil6tv3e4e from binary cache
==> libxml2: Successfully installed libxml2-2.10.1-4aq5aj2n5u2n3dbrb76pnhoil6tv3e4e
Fetch: 0.03s. Build: 0.33s. Total: 0.37s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/libxml2-2.10.1-4aq5aj2n5u2n3dbrb76pnhoil6tv3e4e
==> Installing readline-8.1.2-kgyvtw5h6mi5nms32x3vzgbw32ymmfwa
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-readline-8.1.2-kgyvtw5h6mi5nms32x3vzgbw32ymmfwa.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/readline-8.1.2/linux-ubuntu18.04-x86_64-gcc-7.5.0-readline-8.1.2-kgyvtw5h6mi5nms32x3vzgbw32ymmfwa.spack
==> Extracting readline-8.1.2-kgyvtw5h6mi5nms32x3vzgbw32ymmfwa from binary cache
==> readline: Successfully installed readline-8.1.2-kgyvtw5h6mi5nms32x3vzgbw32ymmfwa
Fetch: 0.03s. Build: 0.26s. Total: 0.29s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/readline-8.1.2-kgyvtw5h6mi5nms32x3vzgbw32ymmfwa
==> Installing libedit-3.1-20210216-6pzeykrtvrkpbw6u3mq6likd4ktvah76
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-libedit-3.1-20210216-6pzeykrtvrkpbw6u3mq6likd4ktvah76.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/libedit-3.1-20210216/linux-ubuntu18.04-x86_64-gcc-7.5.0-libedit-3.1-20210216-6pzeykrtvrkpbw6u3mq6likd4ktvah76.spack
==> Extracting libedit-3.1-20210216-6pzeykrtvrkpbw6u3mq6likd4ktvah76 from binary cache
==> libedit: Successfully installed libedit-3.1-20210216-6pzeykrtvrkpbw6u3mq6likd4ktvah76
Fetch: 0.03s. Build: 0.26s. Total: 0.29s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/libedit-3.1-20210216-6pzeykrtvrkpbw6u3mq6likd4ktvah76
==> Installing m4-1.4.19-z7d5q4f2qzxejx4xxdrj45q5gxur6q7b
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-m4-1.4.19-z7d5q4f2qzxejx4xxdrj45q5gxur6q7b.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/m4-1.4.19/linux-ubuntu18.04-x86_64-gcc-7.5.0-m4-1.4.19-z7d5q4f2qzxejx4xxdrj45q5gxur6q7b.spack
==> Extracting m4-1.4.19-z7d5q4f2qzxejx4xxdrj45q5gxur6q7b from binary cache
==> m4: Successfully installed m4-1.4.19-z7d5q4f2qzxejx4xxdrj45q5gxur6q7b
Fetch: 0.03s. Build: 0.25s. Total: 0.28s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/m4-1.4.19-z7d5q4f2qzxejx4xxdrj45q5gxur6q7b
==> Installing bzip2-1.0.8-cxcrelnw64jh6lvhzb6pfar7nijv6us6
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-bzip2-1.0.8-cxcrelnw64jh6lvhzb6pfar7nijv6us6.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/bzip2-1.0.8/linux-ubuntu18.04-x86_64-gcc-7.5.0-bzip2-1.0.8-cxcrelnw64jh6lvhzb6pfar7nijv6us6.spack
==> Extracting bzip2-1.0.8-cxcrelnw64jh6lvhzb6pfar7nijv6us6 from binary cache
==> bzip2: Successfully installed bzip2-1.0.8-cxcrelnw64jh6lvhzb6pfar7nijv6us6
Fetch: 0.02s. Build: 0.24s. Total: 0.26s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/bzip2-1.0.8-cxcrelnw64jh6lvhzb6pfar7nijv6us6
==> Installing gdbm-1.23-cpmyntybsnm3se7lfnvqosbiqzrcg2kq
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-gdbm-1.23-cpmyntybsnm3se7lfnvqosbiqzrcg2kq.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/gdbm-1.23/linux-ubuntu18.04-x86_64-gcc-7.5.0-gdbm-1.23-cpmyntybsnm3se7lfnvqosbiqzrcg2kq.spack
==> Extracting gdbm-1.23-cpmyntybsnm3se7lfnvqosbiqzrcg2kq from binary cache
==> gdbm: Successfully installed gdbm-1.23-cpmyntybsnm3se7lfnvqosbiqzrcg2kq
Fetch: 0.03s. Build: 0.27s. Total: 0.30s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/gdbm-1.23-cpmyntybsnm3se7lfnvqosbiqzrcg2kq
==> Installing libtool-2.4.7-bdxu4wnbhlmvj6sh5y7uynrldzepiilz
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-libtool-2.4.7-bdxu4wnbhlmvj6sh5y7uynrldzepiilz.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/libtool-2.4.7/linux-ubuntu18.04-x86_64-gcc-7.5.0-libtool-2.4.7-bdxu4wnbhlmvj6sh5y7uynrldzepiilz.spack
==> Extracting libtool-2.4.7-bdxu4wnbhlmvj6sh5y7uynrldzepiilz from binary cache
==> libtool: Successfully installed libtool-2.4.7-bdxu4wnbhlmvj6sh5y7uynrldzepiilz
Fetch: 0.03s. Build: 0.27s. Total: 0.29s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/libtool-2.4.7-bdxu4wnbhlmvj6sh5y7uynrldzepiilz
==> Installing tar-1.34-kawegoyhusotpo5mlsqnjqf6ngrjyj2w
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-tar-1.34-kawegoyhusotpo5mlsqnjqf6ngrjyj2w.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/tar-1.34/linux-ubuntu18.04-x86_64-gcc-7.5.0-tar-1.34-kawegoyhusotpo5mlsqnjqf6ngrjyj2w.spack
==> Extracting tar-1.34-kawegoyhusotpo5mlsqnjqf6ngrjyj2w from binary cache
==> tar: Successfully installed tar-1.34-kawegoyhusotpo5mlsqnjqf6ngrjyj2w
Fetch: 0.03s. Build: 0.29s. Total: 0.32s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/tar-1.34-kawegoyhusotpo5mlsqnjqf6ngrjyj2w
==> Installing perl-5.36.0-eydiwimku2cctu6dsom3yvfxxjmqyr4w
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-perl-5.36.0-eydiwimku2cctu6dsom3yvfxxjmqyr4w.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/perl-5.36.0/linux-ubuntu18.04-x86_64-gcc-7.5.0-perl-5.36.0-eydiwimku2cctu6dsom3yvfxxjmqyr4w.spack
==> Extracting perl-5.36.0-eydiwimku2cctu6dsom3yvfxxjmqyr4w from binary cache
==> perl: Successfully installed perl-5.36.0-eydiwimku2cctu6dsom3yvfxxjmqyr4w
Fetch: 0.04s. Build: 1.39s. Total: 1.44s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/perl-5.36.0-eydiwimku2cctu6dsom3yvfxxjmqyr4w
==> Installing libpciaccess-0.16-p7f5n6q6kwnzq7syvqbslnotl72yxs23
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-libpciaccess-0.16-p7f5n6q6kwnzq7syvqbslnotl72yxs23.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/libpciaccess-0.16/linux-ubuntu18.04-x86_64-gcc-7.5.0-libpciaccess-0.16-p7f5n6q6kwnzq7syvqbslnotl72yxs23.spack
==> Extracting libpciaccess-0.16-p7f5n6q6kwnzq7syvqbslnotl72yxs23 from binary cache
==> libpciaccess: Successfully installed libpciaccess-0.16-p7f5n6q6kwnzq7syvqbslnotl72yxs23
Fetch: 0.03s. Build: 0.24s. Total: 0.26s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/libpciaccess-0.16-p7f5n6q6kwnzq7syvqbslnotl72yxs23
==> Installing gettext-0.21.1-hj6szikaqzdpxa36gk4w72m4czhwd6gu
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-gettext-0.21.1-hj6szikaqzdpxa36gk4w72m4czhwd6gu.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/gettext-0.21.1/linux-ubuntu18.04-x86_64-gcc-7.5.0-gettext-0.21.1-hj6szikaqzdpxa36gk4w72m4czhwd6gu.spack
==> Extracting gettext-0.21.1-hj6szikaqzdpxa36gk4w72m4czhwd6gu from binary cache
==> gettext: Successfully installed gettext-0.21.1-hj6szikaqzdpxa36gk4w72m4czhwd6gu
Fetch: 0.04s. Build: 0.85s. Total: 0.89s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/gettext-0.21.1-hj6szikaqzdpxa36gk4w72m4czhwd6gu
==> Installing openssl-1.1.1s-yr4z2pt4jnp5fltumr2my3badazsarz2
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-openssl-1.1.1s-yr4z2pt4jnp5fltumr2my3badazsarz2.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/openssl-1.1.1s/linux-ubuntu18.04-x86_64-gcc-7.5.0-openssl-1.1.1s-yr4z2pt4jnp5fltumr2my3badazsarz2.spack
==> Extracting openssl-1.1.1s-yr4z2pt4jnp5fltumr2my3badazsarz2 from binary cache
==> openssl: Successfully installed openssl-1.1.1s-yr4z2pt4jnp5fltumr2my3badazsarz2
Fetch: 0.03s. Build: 0.34s. Total: 0.37s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/openssl-1.1.1s-yr4z2pt4jnp5fltumr2my3badazsarz2
==> Installing autoconf-2.69-btoteeiz74epw4kulm7aecae4cxraxua
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-autoconf-2.69-btoteeiz74epw4kulm7aecae4cxraxua.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/autoconf-2.69/linux-ubuntu18.04-x86_64-gcc-7.5.0-autoconf-2.69-btoteeiz74epw4kulm7aecae4cxraxua.spack
==> Extracting autoconf-2.69-btoteeiz74epw4kulm7aecae4cxraxua from binary cache
==> autoconf: Successfully installed autoconf-2.69-btoteeiz74epw4kulm7aecae4cxraxua
Fetch: 0.03s. Build: 0.27s. Total: 0.29s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/autoconf-2.69-btoteeiz74epw4kulm7aecae4cxraxua
==> Installing bison-3.8.2-wobmzgvlc235muaaxwehzblkgcnhvwtn
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-bison-3.8.2-wobmzgvlc235muaaxwehzblkgcnhvwtn.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/bison-3.8.2/linux-ubuntu18.04-x86_64-gcc-7.5.0-bison-3.8.2-wobmzgvlc235muaaxwehzblkgcnhvwtn.spack
==> Extracting bison-3.8.2-wobmzgvlc235muaaxwehzblkgcnhvwtn from binary cache
==> bison: Successfully installed bison-3.8.2-wobmzgvlc235muaaxwehzblkgcnhvwtn
Fetch: 0.02s. Build: 0.31s. Total: 0.34s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/bison-3.8.2-wobmzgvlc235muaaxwehzblkgcnhvwtn
==> Installing hwloc-2.8.0-5yywrk2zoib75deet4eu4ocxim2ldngq
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-hwloc-2.8.0-5yywrk2zoib75deet4eu4ocxim2ldngq.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/hwloc-2.8.0/linux-ubuntu18.04-x86_64-gcc-7.5.0-hwloc-2.8.0-5yywrk2zoib75deet4eu4ocxim2ldngq.spack
==> Extracting hwloc-2.8.0-5yywrk2zoib75deet4eu4ocxim2ldngq from binary cache
==> hwloc: Successfully installed hwloc-2.8.0-5yywrk2zoib75deet4eu4ocxim2ldngq
Fetch: 0.03s. Build: 0.46s. Total: 0.48s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/hwloc-2.8.0-5yywrk2zoib75deet4eu4ocxim2ldngq
==> Installing libevent-2.1.12-nblr6w4gwbdyhjz2z5lg5pseztxnb7gh
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-libevent-2.1.12-nblr6w4gwbdyhjz2z5lg5pseztxnb7gh.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/libevent-2.1.12/linux-ubuntu18.04-x86_64-gcc-7.5.0-libevent-2.1.12-nblr6w4gwbdyhjz2z5lg5pseztxnb7gh.spack
==> Extracting libevent-2.1.12-nblr6w4gwbdyhjz2z5lg5pseztxnb7gh from binary cache
==> libevent: Successfully installed libevent-2.1.12-nblr6w4gwbdyhjz2z5lg5pseztxnb7gh
Fetch: 0.03s. Build: 0.29s. Total: 0.32s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/libevent-2.1.12-nblr6w4gwbdyhjz2z5lg5pseztxnb7gh
==> Installing cmake-3.24.3-stszbnscxrtgzqrwmx2wfwsuntf47mpy
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-cmake-3.24.3-stszbnscxrtgzqrwmx2wfwsuntf47mpy.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/cmake-3.24.3/linux-ubuntu18.04-x86_64-gcc-7.5.0-cmake-3.24.3-stszbnscxrtgzqrwmx2wfwsuntf47mpy.spack
==> Extracting cmake-3.24.3-stszbnscxrtgzqrwmx2wfwsuntf47mpy from binary cache
==> cmake: Successfully installed cmake-3.24.3-stszbnscxrtgzqrwmx2wfwsuntf47mpy
Fetch: 0.08s. Build: 1.10s. Total: 1.18s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/cmake-3.24.3-stszbnscxrtgzqrwmx2wfwsuntf47mpy
==> Installing automake-1.16.5-rxjqnjw5jkrbym5x4yshogm3f262crre
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-automake-1.16.5-rxjqnjw5jkrbym5x4yshogm3f262crre.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/automake-1.16.5/linux-ubuntu18.04-x86_64-gcc-7.5.0-automake-1.16.5-rxjqnjw5jkrbym5x4yshogm3f262crre.spack
==> Extracting automake-1.16.5-rxjqnjw5jkrbym5x4yshogm3f262crre from binary cache
==> automake: Successfully installed automake-1.16.5-rxjqnjw5jkrbym5x4yshogm3f262crre
Fetch: 0.03s. Build: 0.26s. Total: 0.30s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/automake-1.16.5-rxjqnjw5jkrbym5x4yshogm3f262crre
==> Installing krb5-1.19.3-y6ek4vz7ntj6qw26jv2trb3ok4m5koxy
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-krb5-1.19.3-y6ek4vz7ntj6qw26jv2trb3ok4m5koxy.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/krb5-1.19.3/linux-ubuntu18.04-x86_64-gcc-7.5.0-krb5-1.19.3-y6ek4vz7ntj6qw26jv2trb3ok4m5koxy.spack
==> Extracting krb5-1.19.3-y6ek4vz7ntj6qw26jv2trb3ok4m5koxy from binary cache
==> krb5: Successfully installed krb5-1.19.3-y6ek4vz7ntj6qw26jv2trb3ok4m5koxy
Fetch: 0.03s. Build: 0.42s. Total: 0.45s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/krb5-1.19.3-y6ek4vz7ntj6qw26jv2trb3ok4m5koxy
==> Installing pmix-4.1.2-76ul6unbdppxalfkkxjqzoky7lu4jqpo
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-pmix-4.1.2-76ul6unbdppxalfkkxjqzoky7lu4jqpo.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/pmix-4.1.2/linux-ubuntu18.04-x86_64-gcc-7.5.0-pmix-4.1.2-76ul6unbdppxalfkkxjqzoky7lu4jqpo.spack
==> Extracting pmix-4.1.2-76ul6unbdppxalfkkxjqzoky7lu4jqpo from binary cache
==> pmix: Successfully installed pmix-4.1.2-76ul6unbdppxalfkkxjqzoky7lu4jqpo
Fetch: 0.03s. Build: 0.34s. Total: 0.37s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/pmix-4.1.2-76ul6unbdppxalfkkxjqzoky7lu4jqpo
==> Installing numactl-2.0.14-qbwqmk6qylskqtyrfuyfp36f465bxrrk
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-numactl-2.0.14-qbwqmk6qylskqtyrfuyfp36f465bxrrk.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/numactl-2.0.14/linux-ubuntu18.04-x86_64-gcc-7.5.0-numactl-2.0.14-qbwqmk6qylskqtyrfuyfp36f465bxrrk.spack
==> Extracting numactl-2.0.14-qbwqmk6qylskqtyrfuyfp36f465bxrrk from binary cache
==> numactl: Successfully installed numactl-2.0.14-qbwqmk6qylskqtyrfuyfp36f465bxrrk
Fetch: 0.04s. Build: 0.27s. Total: 0.31s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/numactl-2.0.14-qbwqmk6qylskqtyrfuyfp36f465bxrrk
==> Installing openssh-9.1p1-xevso22q5f5fb2bqp5lhuutgvrqtiolo
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-openssh-9.1p1-xevso22q5f5fb2bqp5lhuutgvrqtiolo.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/openssh-9.1p1/linux-ubuntu18.04-x86_64-gcc-7.5.0-openssh-9.1p1-xevso22q5f5fb2bqp5lhuutgvrqtiolo.spack
==> Extracting openssh-9.1p1-xevso22q5f5fb2bqp5lhuutgvrqtiolo from binary cache
==> openssh: Successfully installed openssh-9.1p1-xevso22q5f5fb2bqp5lhuutgvrqtiolo
Fetch: 0.03s. Build: 0.32s. Total: 0.35s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/openssh-9.1p1-xevso22q5f5fb2bqp5lhuutgvrqtiolo
==> Installing openmpi-4.1.4-mfxvu5fnaac33f4pw25rjrojafbbupwb
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-openmpi-4.1.4-mfxvu5fnaac33f4pw25rjrojafbbupwb.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/openmpi-4.1.4/linux-ubuntu18.04-x86_64-gcc-7.5.0-openmpi-4.1.4-mfxvu5fnaac33f4pw25rjrojafbbupwb.spack
==> Extracting openmpi-4.1.4-mfxvu5fnaac33f4pw25rjrojafbbupwb from binary cache
==> openmpi: Successfully installed openmpi-4.1.4-mfxvu5fnaac33f4pw25rjrojafbbupwb
Fetch: 0.04s. Build: 0.64s. Total: 0.68s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/openmpi-4.1.4-mfxvu5fnaac33f4pw25rjrojafbbupwb
==> Installing hdf5-1.12.2-xfftbwlx2fmpxvfzg27vj6hk2pet45f2
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-hdf5-1.12.2-xfftbwlx2fmpxvfzg27vj6hk2pet45f2.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/hdf5-1.12.2/linux-ubuntu18.04-x86_64-gcc-7.5.0-hdf5-1.12.2-xfftbwlx2fmpxvfzg27vj6hk2pet45f2.spack
==> Extracting hdf5-1.12.2-xfftbwlx2fmpxvfzg27vj6hk2pet45f2 from binary cache
==> hdf5: Successfully installed hdf5-1.12.2-xfftbwlx2fmpxvfzg27vj6hk2pet45f2
Fetch: 0.14s. Build: 2.93s. Total: 3.07s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/hdf5-1.12.2-xfftbwlx2fmpxvfzg27vj6hk2pet45f2
Spack packages can also have build options, called variants. Boolean
variants can be specified using the +
(enable) and ~
or -
(disable) sigils. There are two sigils for “disable” to avoid conflicts
with shell parsing in different situations. Variants (boolean or
otherwise) can also be specified using the same syntax as compiler flags.
Here we can install HDF5 without MPI support.
$ spack install hdf5~mpi
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/pkgconf-1.8.0-k2lfw6fht6zvsfihvx3avihboi3uv455
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/ca-certificates-mozilla-2022-10-11-aurd37jjebxaqzs73saip5v6hgfu3foj
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/berkeley-db-18.1.40-53fb72wziswrec6tkbjpowshkul2nsk4
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/libiconv-1.16-ltvovvvjgmlvy4m2pn365cy6p5dysajq
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/zlib-1.2.13-2hfr5rbzefrxf6t6kv4trbsl63puaza6
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/ncurses-6.3-zcuawlif55qhuknvbk4jez7xjcxhnydf
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/diffutils-3.8-c3uhkcjt7tagz2djrd6r2b6b3c2tia3s
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/readline-8.1.2-kgyvtw5h6mi5nms32x3vzgbw32ymmfwa
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/bzip2-1.0.8-cxcrelnw64jh6lvhzb6pfar7nijv6us6
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/gdbm-1.23-cpmyntybsnm3se7lfnvqosbiqzrcg2kq
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/perl-5.36.0-eydiwimku2cctu6dsom3yvfxxjmqyr4w
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/openssl-1.1.1s-yr4z2pt4jnp5fltumr2my3badazsarz2
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/cmake-3.24.3-stszbnscxrtgzqrwmx2wfwsuntf47mpy
==> Installing hdf5-1.12.2-3pu63bvsng2suyhyadbo5j2jhze3judm
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-hdf5-1.12.2-3pu63bvsng2suyhyadbo5j2jhze3judm.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/hdf5-1.12.2/linux-ubuntu18.04-x86_64-gcc-7.5.0-hdf5-1.12.2-3pu63bvsng2suyhyadbo5j2jhze3judm.spack
==> Extracting hdf5-1.12.2-3pu63bvsng2suyhyadbo5j2jhze3judm from binary cache
==> hdf5: Successfully installed hdf5-1.12.2-3pu63bvsng2suyhyadbo5j2jhze3judm
Fetch: 0.35s. Build: 2.91s. Total: 3.25s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/hdf5-1.12.2-3pu63bvsng2suyhyadbo5j2jhze3judm
We might also want to install HDF5 with a different MPI
implementation. While MPI is not a package itself, packages can depend on
abstract interfaces like MPI. Spack handles these through “virtual
dependencies.” A package, such as HDF5, can depend on the MPI
interface. Other packages (openmpi
, mpich
, mvapich2
, etc.)
provide the MPI interface. Any of these providers can be requested for
an MPI dependency. For example, we can build HDF5 with MPI support
provided by MPICH by specifying a dependency on mpich
. Spack also
supports versioning of virtual dependencies. A package can depend on the
MPI interface at version 3, and provider packages specify what version of
the interface they provide. The partial spec ^mpi@3
can be satisfied
by any of several providers.
$ spack install hdf5+hl+mpi ^mpich
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/pkgconf-1.8.0-k2lfw6fht6zvsfihvx3avihboi3uv455
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/ca-certificates-mozilla-2022-10-11-aurd37jjebxaqzs73saip5v6hgfu3foj
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/berkeley-db-18.1.40-53fb72wziswrec6tkbjpowshkul2nsk4
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/libiconv-1.16-ltvovvvjgmlvy4m2pn365cy6p5dysajq
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/zlib-1.2.13-2hfr5rbzefrxf6t6kv4trbsl63puaza6
==> Installing findutils-4.9.0-fxoomycyzatn7nzlioglzjir3lgs5kuk
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-findutils-4.9.0-fxoomycyzatn7nzlioglzjir3lgs5kuk.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/findutils-4.9.0/linux-ubuntu18.04-x86_64-gcc-7.5.0-findutils-4.9.0-fxoomycyzatn7nzlioglzjir3lgs5kuk.spack
==> Extracting findutils-4.9.0-fxoomycyzatn7nzlioglzjir3lgs5kuk from binary cache
==> findutils: Successfully installed findutils-4.9.0-fxoomycyzatn7nzlioglzjir3lgs5kuk
Fetch: 0.18s. Build: 0.28s. Total: 0.47s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/findutils-4.9.0-fxoomycyzatn7nzlioglzjir3lgs5kuk
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/libsigsegv-2.13-e262sf6ptgnmyu7zkflzp3ycbdfqz7hf
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/util-macros-1.19.3-ao5w53rpwhgfruk2zrqcehlov5slestd
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/xz-5.2.7-nrwxythffgfumjv7skmgdjtxaunlmqau
==> Installing libfabric-1.16.1-u2kjaxdisx652qhefe2ibofiewkdgstr
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-libfabric-1.16.1-u2kjaxdisx652qhefe2ibofiewkdgstr.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/libfabric-1.16.1/linux-ubuntu18.04-x86_64-gcc-7.5.0-libfabric-1.16.1-u2kjaxdisx652qhefe2ibofiewkdgstr.spack
==> Extracting libfabric-1.16.1-u2kjaxdisx652qhefe2ibofiewkdgstr from binary cache
==> libfabric: Successfully installed libfabric-1.16.1-u2kjaxdisx652qhefe2ibofiewkdgstr
Fetch: 0.03s. Build: 0.28s. Total: 0.31s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/libfabric-1.16.1-u2kjaxdisx652qhefe2ibofiewkdgstr
==> Installing libmd-1.0.4-miq3rrs534mewt3w5r3wd5jp3lkk7y25
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-libmd-1.0.4-miq3rrs534mewt3w5r3wd5jp3lkk7y25.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/libmd-1.0.4/linux-ubuntu18.04-x86_64-gcc-7.5.0-libmd-1.0.4-miq3rrs534mewt3w5r3wd5jp3lkk7y25.spack
==> Extracting libmd-1.0.4-miq3rrs534mewt3w5r3wd5jp3lkk7y25 from binary cache
==> libmd: Successfully installed libmd-1.0.4-miq3rrs534mewt3w5r3wd5jp3lkk7y25
Fetch: 0.03s. Build: 0.25s. Total: 0.28s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/libmd-1.0.4-miq3rrs534mewt3w5r3wd5jp3lkk7y25
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/zstd-1.5.2-fprmzmoubdjdr663rprctp2tuqiv5apu
==> Installing libffi-3.4.2-qzq4b7hjmtrswtnnezcytreqg4vtsgi5
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-libffi-3.4.2-qzq4b7hjmtrswtnnezcytreqg4vtsgi5.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/libffi-3.4.2/linux-ubuntu18.04-x86_64-gcc-7.5.0-libffi-3.4.2-qzq4b7hjmtrswtnnezcytreqg4vtsgi5.spack
==> Extracting libffi-3.4.2-qzq4b7hjmtrswtnnezcytreqg4vtsgi5 from binary cache
==> libffi: Successfully installed libffi-3.4.2-qzq4b7hjmtrswtnnezcytreqg4vtsgi5
Fetch: 0.02s. Build: 0.23s. Total: 0.25s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/libffi-3.4.2-qzq4b7hjmtrswtnnezcytreqg4vtsgi5
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/ncurses-6.3-zcuawlif55qhuknvbk4jez7xjcxhnydf
==> Installing util-linux-uuid-2.38.1-eayyoxjdfrc2wivabs5jbipcofeluyyo
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-util-linux-uuid-2.38.1-eayyoxjdfrc2wivabs5jbipcofeluyyo.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/util-linux-uuid-2.38.1/linux-ubuntu18.04-x86_64-gcc-7.5.0-util-linux-uuid-2.38.1-eayyoxjdfrc2wivabs5jbipcofeluyyo.spack
==> Extracting util-linux-uuid-2.38.1-eayyoxjdfrc2wivabs5jbipcofeluyyo from binary cache
==> util-linux-uuid: Successfully installed util-linux-uuid-2.38.1-eayyoxjdfrc2wivabs5jbipcofeluyyo
Fetch: 0.03s. Build: 0.30s. Total: 0.32s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/util-linux-uuid-2.38.1-eayyoxjdfrc2wivabs5jbipcofeluyyo
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/diffutils-3.8-c3uhkcjt7tagz2djrd6r2b6b3c2tia3s
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/pigz-2.7-wod35nye4qcrkbopr23zoy5qb3ywp3v3
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/libxml2-2.10.1-4aq5aj2n5u2n3dbrb76pnhoil6tv3e4e
==> Installing libbsd-0.11.5-qieib3tiyp74ps4kn3jail7bot35t7hp
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-libbsd-0.11.5-qieib3tiyp74ps4kn3jail7bot35t7hp.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/libbsd-0.11.5/linux-ubuntu18.04-x86_64-gcc-7.5.0-libbsd-0.11.5-qieib3tiyp74ps4kn3jail7bot35t7hp.spack
==> Extracting libbsd-0.11.5-qieib3tiyp74ps4kn3jail7bot35t7hp from binary cache
==> libbsd: Successfully installed libbsd-0.11.5-qieib3tiyp74ps4kn3jail7bot35t7hp
Fetch: 0.03s. Build: 0.27s. Total: 0.30s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/libbsd-0.11.5-qieib3tiyp74ps4kn3jail7bot35t7hp
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/readline-8.1.2-kgyvtw5h6mi5nms32x3vzgbw32ymmfwa
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/m4-1.4.19-z7d5q4f2qzxejx4xxdrj45q5gxur6q7b
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/bzip2-1.0.8-cxcrelnw64jh6lvhzb6pfar7nijv6us6
==> Installing expat-2.4.8-j5k5nzgsbhue6ylglt4gtrnm6okuvsj6
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-expat-2.4.8-j5k5nzgsbhue6ylglt4gtrnm6okuvsj6.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/expat-2.4.8/linux-ubuntu18.04-x86_64-gcc-7.5.0-expat-2.4.8-j5k5nzgsbhue6ylglt4gtrnm6okuvsj6.spack
==> Extracting expat-2.4.8-j5k5nzgsbhue6ylglt4gtrnm6okuvsj6 from binary cache
==> expat: Successfully installed expat-2.4.8-j5k5nzgsbhue6ylglt4gtrnm6okuvsj6
Fetch: 0.03s. Build: 0.25s. Total: 0.27s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/expat-2.4.8-j5k5nzgsbhue6ylglt4gtrnm6okuvsj6
==> Installing sqlite-3.39.4-vmf7qax3kowjkec5bzohcqvo5rqgm3xx
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-sqlite-3.39.4-vmf7qax3kowjkec5bzohcqvo5rqgm3xx.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/sqlite-3.39.4/linux-ubuntu18.04-x86_64-gcc-7.5.0-sqlite-3.39.4-vmf7qax3kowjkec5bzohcqvo5rqgm3xx.spack
==> Extracting sqlite-3.39.4-vmf7qax3kowjkec5bzohcqvo5rqgm3xx from binary cache
==> sqlite: Successfully installed sqlite-3.39.4-vmf7qax3kowjkec5bzohcqvo5rqgm3xx
Fetch: 0.03s. Build: 0.39s. Total: 0.43s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/sqlite-3.39.4-vmf7qax3kowjkec5bzohcqvo5rqgm3xx
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/gdbm-1.23-cpmyntybsnm3se7lfnvqosbiqzrcg2kq
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/libtool-2.4.7-bdxu4wnbhlmvj6sh5y7uynrldzepiilz
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/tar-1.34-kawegoyhusotpo5mlsqnjqf6ngrjyj2w
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/perl-5.36.0-eydiwimku2cctu6dsom3yvfxxjmqyr4w
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/libpciaccess-0.16-p7f5n6q6kwnzq7syvqbslnotl72yxs23
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/gettext-0.21.1-hj6szikaqzdpxa36gk4w72m4czhwd6gu
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/openssl-1.1.1s-yr4z2pt4jnp5fltumr2my3badazsarz2
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/autoconf-2.69-btoteeiz74epw4kulm7aecae4cxraxua
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/hwloc-2.8.0-5yywrk2zoib75deet4eu4ocxim2ldngq
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/cmake-3.24.3-stszbnscxrtgzqrwmx2wfwsuntf47mpy
==> Installing python-3.10.8-cyf55fezf7ib2o6wqflx2jo7xz6tobwh
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-python-3.10.8-cyf55fezf7ib2o6wqflx2jo7xz6tobwh.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/python-3.10.8/linux-ubuntu18.04-x86_64-gcc-7.5.0-python-3.10.8-cyf55fezf7ib2o6wqflx2jo7xz6tobwh.spack
==> Extracting python-3.10.8-cyf55fezf7ib2o6wqflx2jo7xz6tobwh from binary cache
==> python: Successfully installed python-3.10.8-cyf55fezf7ib2o6wqflx2jo7xz6tobwh
Fetch: 0.07s. Build: 2.72s. Total: 2.79s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/python-3.10.8-cyf55fezf7ib2o6wqflx2jo7xz6tobwh
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/automake-1.16.5-rxjqnjw5jkrbym5x4yshogm3f262crre
==> Installing yaksa-0.2-tlfr5qwqhalsfrp732iewcdrjalvtjcl
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-yaksa-0.2-tlfr5qwqhalsfrp732iewcdrjalvtjcl.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/yaksa-0.2/linux-ubuntu18.04-x86_64-gcc-7.5.0-yaksa-0.2-tlfr5qwqhalsfrp732iewcdrjalvtjcl.spack
==> Extracting yaksa-0.2-tlfr5qwqhalsfrp732iewcdrjalvtjcl from binary cache
==> yaksa: Successfully installed yaksa-0.2-tlfr5qwqhalsfrp732iewcdrjalvtjcl
Fetch: 0.05s. Build: 0.79s. Total: 0.84s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/yaksa-0.2-tlfr5qwqhalsfrp732iewcdrjalvtjcl
==> Installing mpich-4.0.2-vbkcftfrezurdhekzxpycihudiv5kyzy
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-mpich-4.0.2-vbkcftfrezurdhekzxpycihudiv5kyzy.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/mpich-4.0.2/linux-ubuntu18.04-x86_64-gcc-7.5.0-mpich-4.0.2-vbkcftfrezurdhekzxpycihudiv5kyzy.spack
==> Extracting mpich-4.0.2-vbkcftfrezurdhekzxpycihudiv5kyzy from binary cache
==> mpich: Successfully installed mpich-4.0.2-vbkcftfrezurdhekzxpycihudiv5kyzy
Fetch: 0.04s. Build: 1.21s. Total: 1.25s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/mpich-4.0.2-vbkcftfrezurdhekzxpycihudiv5kyzy
==> Installing hdf5-1.12.2-nc7yve6lcatumow4jja6dvqudot4j2lp
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-hdf5-1.12.2-nc7yve6lcatumow4jja6dvqudot4j2lp.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/hdf5-1.12.2/linux-ubuntu18.04-x86_64-gcc-7.5.0-hdf5-1.12.2-nc7yve6lcatumow4jja6dvqudot4j2lp.spack
==> Extracting hdf5-1.12.2-nc7yve6lcatumow4jja6dvqudot4j2lp from binary cache
==> hdf5: Successfully installed hdf5-1.12.2-nc7yve6lcatumow4jja6dvqudot4j2lp
Fetch: 0.15s. Build: 3.24s. Total: 3.39s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/hdf5-1.12.2-nc7yve6lcatumow4jja6dvqudot4j2lp
We’ll do a quick check in on what we have installed so far.
$ spack find -ldf
-- linux-ubuntu18.04-x86_64 / clang@7.0.0 -----------------------
36jwtbo tcl@8.6.12%clang
2xcmtth zlib@1.2.8%clang
2xcmtth zlib@1.2.8%clang
fdbomoa zlib@1.2.13%clang
-- linux-ubuntu18.04-x86_64 / gcc@6.5.0 -------------------------
6izan4f zlib@1.2.13%gcc
-- linux-ubuntu18.04-x86_64 / gcc@7.5.0 -------------------------
btoteei autoconf@2.69%gcc
z7d5q4f m4@1.4.19%gcc
c3uhkcj diffutils@3.8%gcc
ltvovvv libiconv@1.16%gcc
e262sf6 libsigsegv@2.13%gcc
eydiwim perl@5.36.0%gcc
53fb72w berkeley-db@18.1.40%gcc
cxcreln bzip2@1.0.8%gcc
cpmynty gdbm@1.23%gcc
kgyvtw5 readline@8.1.2%gcc
zcuawli ncurses@6.3%gcc
k2lfw6f pkgconf@1.8.0%gcc
2hfr5rb zlib@1.2.13%gcc
rxjqnjw automake@1.16.5%gcc
btoteei autoconf@2.69%gcc
z7d5q4f m4@1.4.19%gcc
c3uhkcj diffutils@3.8%gcc
ltvovvv libiconv@1.16%gcc
e262sf6 libsigsegv@2.13%gcc
eydiwim perl@5.36.0%gcc
53fb72w berkeley-db@18.1.40%gcc
cxcreln bzip2@1.0.8%gcc
cpmynty gdbm@1.23%gcc
kgyvtw5 readline@8.1.2%gcc
zcuawli ncurses@6.3%gcc
k2lfw6f pkgconf@1.8.0%gcc
2hfr5rb zlib@1.2.13%gcc
53fb72w berkeley-db@18.1.40%gcc
wobmzgv bison@3.8.2%gcc
c3uhkcj diffutils@3.8%gcc
ltvovvv libiconv@1.16%gcc
z7d5q4f m4@1.4.19%gcc
e262sf6 libsigsegv@2.13%gcc
eydiwim perl@5.36.0%gcc
53fb72w berkeley-db@18.1.40%gcc
cxcreln bzip2@1.0.8%gcc
cpmynty gdbm@1.23%gcc
kgyvtw5 readline@8.1.2%gcc
zcuawli ncurses@6.3%gcc
k2lfw6f pkgconf@1.8.0%gcc
2hfr5rb zlib@1.2.13%gcc
cxcreln bzip2@1.0.8%gcc
c3uhkcj diffutils@3.8%gcc
ltvovvv libiconv@1.16%gcc
aurd37j ca-certificates-mozilla@2022-10-11%gcc
stszbns cmake@3.24.3%gcc
zcuawli ncurses@6.3%gcc
k2lfw6f pkgconf@1.8.0%gcc
yr4z2pt openssl@1.1.1s%gcc
aurd37j ca-certificates-mozilla@2022-10-11%gcc
eydiwim perl@5.36.0%gcc
53fb72w berkeley-db@18.1.40%gcc
cxcreln bzip2@1.0.8%gcc
c3uhkcj diffutils@3.8%gcc
ltvovvv libiconv@1.16%gcc
cpmynty gdbm@1.23%gcc
kgyvtw5 readline@8.1.2%gcc
2hfr5rb zlib@1.2.13%gcc
c3uhkcj diffutils@3.8%gcc
ltvovvv libiconv@1.16%gcc
j5k5nzg expat@2.4.8%gcc
qieib3t libbsd@0.11.5%gcc
miq3rrs libmd@1.0.4%gcc
fxoomyc findutils@4.9.0%gcc
cpmynty gdbm@1.23%gcc
kgyvtw5 readline@8.1.2%gcc
zcuawli ncurses@6.3%gcc
k2lfw6f pkgconf@1.8.0%gcc
hj6szik gettext@0.21.1%gcc
cxcreln bzip2@1.0.8%gcc
c3uhkcj diffutils@3.8%gcc
ltvovvv libiconv@1.16%gcc
4aq5aj2 libxml2@2.10.1%gcc
k2lfw6f pkgconf@1.8.0%gcc
2hfr5rb zlib@1.2.13%gcc
zcuawli ncurses@6.3%gcc
kawegoy tar@1.34%gcc
wod35ny pigz@2.7%gcc
fprmzmo zstd@1.5.2%gcc
nrwxyth xz@5.2.7%gcc
3pu63bv hdf5@1.12.2%gcc
stszbns cmake@3.24.3%gcc
zcuawli ncurses@6.3%gcc
yr4z2pt openssl@1.1.1s%gcc
aurd37j ca-certificates-mozilla@2022-10-11%gcc
eydiwim perl@5.36.0%gcc
53fb72w berkeley-db@18.1.40%gcc
cxcreln bzip2@1.0.8%gcc
c3uhkcj diffutils@3.8%gcc
ltvovvv libiconv@1.16%gcc
cpmynty gdbm@1.23%gcc
kgyvtw5 readline@8.1.2%gcc
k2lfw6f pkgconf@1.8.0%gcc
2hfr5rb zlib@1.2.13%gcc
xfftbwl hdf5@1.12.2%gcc
stszbns cmake@3.24.3%gcc
zcuawli ncurses@6.3%gcc
yr4z2pt openssl@1.1.1s%gcc
aurd37j ca-certificates-mozilla@2022-10-11%gcc
mfxvu5f openmpi@4.1.4%gcc
5yywrk2 hwloc@2.8.0%gcc
p7f5n6q libpciaccess@0.16%gcc
ao5w53r util-macros@1.19.3%gcc
4aq5aj2 libxml2@2.10.1%gcc
ltvovvv libiconv@1.16%gcc
nrwxyth xz@5.2.7%gcc
qbwqmk6 numactl@2.0.14%gcc
btoteei autoconf@2.69%gcc
rxjqnjw automake@1.16.5%gcc
bdxu4wn libtool@2.4.7%gcc
z7d5q4f m4@1.4.19%gcc
c3uhkcj diffutils@3.8%gcc
e262sf6 libsigsegv@2.13%gcc
xevso22 openssh@9.1p1%gcc
y6ek4vz krb5@1.19.3%gcc
wobmzgv bison@3.8.2%gcc
hj6szik gettext@0.21.1%gcc
kawegoy tar@1.34%gcc
wod35ny pigz@2.7%gcc
fprmzmo zstd@1.5.2%gcc
6pzeykr libedit@3.1-20210216%gcc
eydiwim perl@5.36.0%gcc
53fb72w berkeley-db@18.1.40%gcc
cxcreln bzip2@1.0.8%gcc
cpmynty gdbm@1.23%gcc
kgyvtw5 readline@8.1.2%gcc
76ul6un pmix@4.1.2%gcc
nblr6w4 libevent@2.1.12%gcc
k2lfw6f pkgconf@1.8.0%gcc
2hfr5rb zlib@1.2.13%gcc
nc7yve6 hdf5@1.12.2%gcc
stszbns cmake@3.24.3%gcc
zcuawli ncurses@6.3%gcc
yr4z2pt openssl@1.1.1s%gcc
aurd37j ca-certificates-mozilla@2022-10-11%gcc
eydiwim perl@5.36.0%gcc
53fb72w berkeley-db@18.1.40%gcc
cxcreln bzip2@1.0.8%gcc
cpmynty gdbm@1.23%gcc
vbkcftf mpich@4.0.2%gcc
fxoomyc findutils@4.9.0%gcc
5yywrk2 hwloc@2.8.0%gcc
u2kjaxd libfabric@1.16.1%gcc
p7f5n6q libpciaccess@0.16%gcc
bdxu4wn libtool@2.4.7%gcc
ao5w53r util-macros@1.19.3%gcc
4aq5aj2 libxml2@2.10.1%gcc
ltvovvv libiconv@1.16%gcc
nrwxyth xz@5.2.7%gcc
tlfr5qw yaksa@0.2%gcc
btoteei autoconf@2.69%gcc
rxjqnjw automake@1.16.5%gcc
z7d5q4f m4@1.4.19%gcc
c3uhkcj diffutils@3.8%gcc
e262sf6 libsigsegv@2.13%gcc
cyf55fe python@3.10.8%gcc
j5k5nzg expat@2.4.8%gcc
qieib3t libbsd@0.11.5%gcc
miq3rrs libmd@1.0.4%gcc
hj6szik gettext@0.21.1%gcc
kawegoy tar@1.34%gcc
wod35ny pigz@2.7%gcc
fprmzmo zstd@1.5.2%gcc
qzq4b7h libffi@3.4.2%gcc
kgyvtw5 readline@8.1.2%gcc
vmf7qax sqlite@3.39.4%gcc
eayyoxj util-linux-uuid@2.38.1%gcc
k2lfw6f pkgconf@1.8.0%gcc
2hfr5rb zlib@1.2.13%gcc
5yywrk2 hwloc@2.8.0%gcc
p7f5n6q libpciaccess@0.16%gcc
bdxu4wn libtool@2.4.7%gcc
z7d5q4f m4@1.4.19%gcc
c3uhkcj diffutils@3.8%gcc
e262sf6 libsigsegv@2.13%gcc
ao5w53r util-macros@1.19.3%gcc
4aq5aj2 libxml2@2.10.1%gcc
ltvovvv libiconv@1.16%gcc
nrwxyth xz@5.2.7%gcc
2hfr5rb zlib@1.2.13%gcc
zcuawli ncurses@6.3%gcc
k2lfw6f pkgconf@1.8.0%gcc
y6ek4vz krb5@1.19.3%gcc
wobmzgv bison@3.8.2%gcc
z7d5q4f m4@1.4.19%gcc
e262sf6 libsigsegv@2.13%gcc
eydiwim perl@5.36.0%gcc
53fb72w berkeley-db@18.1.40%gcc
cpmynty gdbm@1.23%gcc
kgyvtw5 readline@8.1.2%gcc
c3uhkcj diffutils@3.8%gcc
ltvovvv libiconv@1.16%gcc
hj6szik gettext@0.21.1%gcc
cxcreln bzip2@1.0.8%gcc
4aq5aj2 libxml2@2.10.1%gcc
k2lfw6f pkgconf@1.8.0%gcc
zcuawli ncurses@6.3%gcc
kawegoy tar@1.34%gcc
wod35ny pigz@2.7%gcc
fprmzmo zstd@1.5.2%gcc
nrwxyth xz@5.2.7%gcc
yr4z2pt openssl@1.1.1s%gcc
aurd37j ca-certificates-mozilla@2022-10-11%gcc
2hfr5rb zlib@1.2.13%gcc
qieib3t libbsd@0.11.5%gcc
miq3rrs libmd@1.0.4%gcc
6pzeykr libedit@3.1-20210216%gcc
zcuawli ncurses@6.3%gcc
k2lfw6f pkgconf@1.8.0%gcc
nblr6w4 libevent@2.1.12%gcc
yr4z2pt openssl@1.1.1s%gcc
aurd37j ca-certificates-mozilla@2022-10-11%gcc
eydiwim perl@5.36.0%gcc
53fb72w berkeley-db@18.1.40%gcc
cxcreln bzip2@1.0.8%gcc
c3uhkcj diffutils@3.8%gcc
ltvovvv libiconv@1.16%gcc
cpmynty gdbm@1.23%gcc
kgyvtw5 readline@8.1.2%gcc
zcuawli ncurses@6.3%gcc
k2lfw6f pkgconf@1.8.0%gcc
2hfr5rb zlib@1.2.13%gcc
u2kjaxd libfabric@1.16.1%gcc
qzq4b7h libffi@3.4.2%gcc
ltvovvv libiconv@1.16%gcc
miq3rrs libmd@1.0.4%gcc
p7f5n6q libpciaccess@0.16%gcc
bdxu4wn libtool@2.4.7%gcc
z7d5q4f m4@1.4.19%gcc
c3uhkcj diffutils@3.8%gcc
ltvovvv libiconv@1.16%gcc
e262sf6 libsigsegv@2.13%gcc
k2lfw6f pkgconf@1.8.0%gcc
ao5w53r util-macros@1.19.3%gcc
e262sf6 libsigsegv@2.13%gcc
bdxu4wn libtool@2.4.7%gcc
z7d5q4f m4@1.4.19%gcc
c3uhkcj diffutils@3.8%gcc
ltvovvv libiconv@1.16%gcc
e262sf6 libsigsegv@2.13%gcc
4aq5aj2 libxml2@2.10.1%gcc
ltvovvv libiconv@1.16%gcc
k2lfw6f pkgconf@1.8.0%gcc
nrwxyth xz@5.2.7%gcc
2hfr5rb zlib@1.2.13%gcc
z7d5q4f m4@1.4.19%gcc
c3uhkcj diffutils@3.8%gcc
ltvovvv libiconv@1.16%gcc
e262sf6 libsigsegv@2.13%gcc
vbkcftf mpich@4.0.2%gcc
fxoomyc findutils@4.9.0%gcc
5yywrk2 hwloc@2.8.0%gcc
zcuawli ncurses@6.3%gcc
u2kjaxd libfabric@1.16.1%gcc
p7f5n6q libpciaccess@0.16%gcc
bdxu4wn libtool@2.4.7%gcc
ao5w53r util-macros@1.19.3%gcc
4aq5aj2 libxml2@2.10.1%gcc
ltvovvv libiconv@1.16%gcc
nrwxyth xz@5.2.7%gcc
2hfr5rb zlib@1.2.13%gcc
k2lfw6f pkgconf@1.8.0%gcc
tlfr5qw yaksa@0.2%gcc
btoteei autoconf@2.69%gcc
eydiwim perl@5.36.0%gcc
53fb72w berkeley-db@18.1.40%gcc
rxjqnjw automake@1.16.5%gcc
z7d5q4f m4@1.4.19%gcc
c3uhkcj diffutils@3.8%gcc
e262sf6 libsigsegv@2.13%gcc
cyf55fe python@3.10.8%gcc
cxcreln bzip2@1.0.8%gcc
j5k5nzg expat@2.4.8%gcc
qieib3t libbsd@0.11.5%gcc
miq3rrs libmd@1.0.4%gcc
cpmynty gdbm@1.23%gcc
hj6szik gettext@0.21.1%gcc
kawegoy tar@1.34%gcc
wod35ny pigz@2.7%gcc
fprmzmo zstd@1.5.2%gcc
qzq4b7h libffi@3.4.2%gcc
yr4z2pt openssl@1.1.1s%gcc
aurd37j ca-certificates-mozilla@2022-10-11%gcc
kgyvtw5 readline@8.1.2%gcc
vmf7qax sqlite@3.39.4%gcc
eayyoxj util-linux-uuid@2.38.1%gcc
zcuawli ncurses@6.3%gcc
k2lfw6f pkgconf@1.8.0%gcc
qbwqmk6 numactl@2.0.14%gcc
btoteei autoconf@2.69%gcc
eydiwim perl@5.36.0%gcc
53fb72w berkeley-db@18.1.40%gcc
cxcreln bzip2@1.0.8%gcc
cpmynty gdbm@1.23%gcc
kgyvtw5 readline@8.1.2%gcc
zcuawli ncurses@6.3%gcc
k2lfw6f pkgconf@1.8.0%gcc
2hfr5rb zlib@1.2.13%gcc
rxjqnjw automake@1.16.5%gcc
bdxu4wn libtool@2.4.7%gcc
z7d5q4f m4@1.4.19%gcc
c3uhkcj diffutils@3.8%gcc
ltvovvv libiconv@1.16%gcc
e262sf6 libsigsegv@2.13%gcc
mfxvu5f openmpi@4.1.4%gcc
5yywrk2 hwloc@2.8.0%gcc
p7f5n6q libpciaccess@0.16%gcc
ao5w53r util-macros@1.19.3%gcc
4aq5aj2 libxml2@2.10.1%gcc
ltvovvv libiconv@1.16%gcc
nrwxyth xz@5.2.7%gcc
zcuawli ncurses@6.3%gcc
qbwqmk6 numactl@2.0.14%gcc
btoteei autoconf@2.69%gcc
rxjqnjw automake@1.16.5%gcc
bdxu4wn libtool@2.4.7%gcc
z7d5q4f m4@1.4.19%gcc
c3uhkcj diffutils@3.8%gcc
e262sf6 libsigsegv@2.13%gcc
xevso22 openssh@9.1p1%gcc
y6ek4vz krb5@1.19.3%gcc
wobmzgv bison@3.8.2%gcc
hj6szik gettext@0.21.1%gcc
kawegoy tar@1.34%gcc
wod35ny pigz@2.7%gcc
fprmzmo zstd@1.5.2%gcc
6pzeykr libedit@3.1-20210216%gcc
yr4z2pt openssl@1.1.1s%gcc
aurd37j ca-certificates-mozilla@2022-10-11%gcc
eydiwim perl@5.36.0%gcc
53fb72w berkeley-db@18.1.40%gcc
cxcreln bzip2@1.0.8%gcc
cpmynty gdbm@1.23%gcc
kgyvtw5 readline@8.1.2%gcc
k2lfw6f pkgconf@1.8.0%gcc
76ul6un pmix@4.1.2%gcc
nblr6w4 libevent@2.1.12%gcc
2hfr5rb zlib@1.2.13%gcc
xevso22 openssh@9.1p1%gcc
y6ek4vz krb5@1.19.3%gcc
wobmzgv bison@3.8.2%gcc
z7d5q4f m4@1.4.19%gcc
e262sf6 libsigsegv@2.13%gcc
c3uhkcj diffutils@3.8%gcc
ltvovvv libiconv@1.16%gcc
hj6szik gettext@0.21.1%gcc
cxcreln bzip2@1.0.8%gcc
4aq5aj2 libxml2@2.10.1%gcc
kawegoy tar@1.34%gcc
wod35ny pigz@2.7%gcc
fprmzmo zstd@1.5.2%gcc
nrwxyth xz@5.2.7%gcc
6pzeykr libedit@3.1-20210216%gcc
k2lfw6f pkgconf@1.8.0%gcc
zcuawli ncurses@6.3%gcc
yr4z2pt openssl@1.1.1s%gcc
aurd37j ca-certificates-mozilla@2022-10-11%gcc
eydiwim perl@5.36.0%gcc
53fb72w berkeley-db@18.1.40%gcc
cpmynty gdbm@1.23%gcc
kgyvtw5 readline@8.1.2%gcc
2hfr5rb zlib@1.2.13%gcc
yr4z2pt openssl@1.1.1s%gcc
aurd37j ca-certificates-mozilla@2022-10-11%gcc
eydiwim perl@5.36.0%gcc
53fb72w berkeley-db@18.1.40%gcc
cxcreln bzip2@1.0.8%gcc
c3uhkcj diffutils@3.8%gcc
ltvovvv libiconv@1.16%gcc
cpmynty gdbm@1.23%gcc
kgyvtw5 readline@8.1.2%gcc
zcuawli ncurses@6.3%gcc
k2lfw6f pkgconf@1.8.0%gcc
2hfr5rb zlib@1.2.13%gcc
eydiwim perl@5.36.0%gcc
53fb72w berkeley-db@18.1.40%gcc
cxcreln bzip2@1.0.8%gcc
c3uhkcj diffutils@3.8%gcc
ltvovvv libiconv@1.16%gcc
cpmynty gdbm@1.23%gcc
kgyvtw5 readline@8.1.2%gcc
zcuawli ncurses@6.3%gcc
k2lfw6f pkgconf@1.8.0%gcc
2hfr5rb zlib@1.2.13%gcc
wod35ny pigz@2.7%gcc
2hfr5rb zlib@1.2.13%gcc
k2lfw6f pkgconf@1.8.0%gcc
76ul6un pmix@4.1.2%gcc
5yywrk2 hwloc@2.8.0%gcc
p7f5n6q libpciaccess@0.16%gcc
bdxu4wn libtool@2.4.7%gcc
z7d5q4f m4@1.4.19%gcc
c3uhkcj diffutils@3.8%gcc
e262sf6 libsigsegv@2.13%gcc
ao5w53r util-macros@1.19.3%gcc
4aq5aj2 libxml2@2.10.1%gcc
ltvovvv libiconv@1.16%gcc
nrwxyth xz@5.2.7%gcc
2hfr5rb zlib@1.2.13%gcc
zcuawli ncurses@6.3%gcc
k2lfw6f pkgconf@1.8.0%gcc
nblr6w4 libevent@2.1.12%gcc
yr4z2pt openssl@1.1.1s%gcc
aurd37j ca-certificates-mozilla@2022-10-11%gcc
eydiwim perl@5.36.0%gcc
53fb72w berkeley-db@18.1.40%gcc
cxcreln bzip2@1.0.8%gcc
cpmynty gdbm@1.23%gcc
kgyvtw5 readline@8.1.2%gcc
cyf55fe python@3.10.8%gcc
cxcreln bzip2@1.0.8%gcc
c3uhkcj diffutils@3.8%gcc
j5k5nzg expat@2.4.8%gcc
qieib3t libbsd@0.11.5%gcc
miq3rrs libmd@1.0.4%gcc
cpmynty gdbm@1.23%gcc
hj6szik gettext@0.21.1%gcc
ltvovvv libiconv@1.16%gcc
4aq5aj2 libxml2@2.10.1%gcc
kawegoy tar@1.34%gcc
wod35ny pigz@2.7%gcc
fprmzmo zstd@1.5.2%gcc
qzq4b7h libffi@3.4.2%gcc
zcuawli ncurses@6.3%gcc
yr4z2pt openssl@1.1.1s%gcc
aurd37j ca-certificates-mozilla@2022-10-11%gcc
eydiwim perl@5.36.0%gcc
53fb72w berkeley-db@18.1.40%gcc
k2lfw6f pkgconf@1.8.0%gcc
kgyvtw5 readline@8.1.2%gcc
vmf7qax sqlite@3.39.4%gcc
eayyoxj util-linux-uuid@2.38.1%gcc
nrwxyth xz@5.2.7%gcc
2hfr5rb zlib@1.2.13%gcc
kgyvtw5 readline@8.1.2%gcc
zcuawli ncurses@6.3%gcc
k2lfw6f pkgconf@1.8.0%gcc
vmf7qax sqlite@3.39.4%gcc
kgyvtw5 readline@8.1.2%gcc
zcuawli ncurses@6.3%gcc
k2lfw6f pkgconf@1.8.0%gcc
2hfr5rb zlib@1.2.13%gcc
kawegoy tar@1.34%gcc
cxcreln bzip2@1.0.8%gcc
c3uhkcj diffutils@3.8%gcc
ltvovvv libiconv@1.16%gcc
wod35ny pigz@2.7%gcc
2hfr5rb zlib@1.2.13%gcc
nrwxyth xz@5.2.7%gcc
fprmzmo zstd@1.5.2%gcc
rakrbas tcl@8.6.12%gcc
zqdhyiy zlib@1.2.8%gcc cppflags="-O3"
v63n6wx tcl@8.6.12%gcc
2hfr5rb zlib@1.2.13%gcc
eayyoxj util-linux-uuid@2.38.1%gcc
k2lfw6f pkgconf@1.8.0%gcc
ao5w53r util-macros@1.19.3%gcc
nrwxyth xz@5.2.7%gcc
tlfr5qw yaksa@0.2%gcc
btoteei autoconf@2.69%gcc
eydiwim perl@5.36.0%gcc
53fb72w berkeley-db@18.1.40%gcc
rxjqnjw automake@1.16.5%gcc
bdxu4wn libtool@2.4.7%gcc
z7d5q4f m4@1.4.19%gcc
c3uhkcj diffutils@3.8%gcc
ltvovvv libiconv@1.16%gcc
e262sf6 libsigsegv@2.13%gcc
cyf55fe python@3.10.8%gcc
cxcreln bzip2@1.0.8%gcc
j5k5nzg expat@2.4.8%gcc
qieib3t libbsd@0.11.5%gcc
miq3rrs libmd@1.0.4%gcc
cpmynty gdbm@1.23%gcc
hj6szik gettext@0.21.1%gcc
4aq5aj2 libxml2@2.10.1%gcc
kawegoy tar@1.34%gcc
wod35ny pigz@2.7%gcc
fprmzmo zstd@1.5.2%gcc
qzq4b7h libffi@3.4.2%gcc
zcuawli ncurses@6.3%gcc
yr4z2pt openssl@1.1.1s%gcc
aurd37j ca-certificates-mozilla@2022-10-11%gcc
k2lfw6f pkgconf@1.8.0%gcc
kgyvtw5 readline@8.1.2%gcc
vmf7qax sqlite@3.39.4%gcc
eayyoxj util-linux-uuid@2.38.1%gcc
nrwxyth xz@5.2.7%gcc
2hfr5rb zlib@1.2.13%gcc
tolklcf zlib@1.2.8%gcc
zqdhyiy zlib@1.2.8%gcc cppflags="-O3"
2hfr5rb zlib@1.2.13%gcc
fprmzmo zstd@1.5.2%gcc
==> 57 installed packages
Spack models the dependencies of packages as a directed acyclic graph
(DAG). The spack find -d
command shows the tree representation of
that graph. We can also use the spack graph
command to view the entire
DAG as a graph.
$ spack graph hdf5+hl+mpi ^mpich
o hdf5@1.12.2/nc7yve6
|\
| |\
| | |\
| | o | mpich@4.0.2/vbkcftf
| |/| |
| | |\ \
| | | |\ \
| | | | |\ \
| | | | | |\ \
| | | | | | |\ \
| | o | | | | | | yaksa@0.2/tlfr5qw
| | |\ \ \ \ \ \ \
| | | |\ \ \ \ \ \ \
| | | | |\ \ \ \ \ \ \
| | | | | |\ \ \ \ \ \ \
| | o | | | | | | | | | | python@3.10.8/cyf55fe
| |/| | | | | | | | | | |
|/|/| | | | | | | | | | |
| | |\ \ \ \ \ \ \ \ \ \ \
| | | |\ \ \ \ \ \ \ \ \ \ \
| | | | |\ \ \ \ \ \ \ \ \ \ \
| | | | | |\ \ \ \ \ \ \ \ \ \ \
| | | | | | |\ \ \ \ \ \ \ \ \ \ \
| | | | | | | |\ \ \ \ \ \ \ \ \ \ \
| | | | | | | | |\ \ \ \ \ \ \ \ \ \ \
| | | | | | | | | |\ \ \ \ \ \ \ \ \ \ \
| | | | | | | | | | |\ \ \ \ \ \ \ \ \ \ \
| | | | | | | | | | | |\ \ \ \ \ \ \ \ \ \ \
| | | | | | | | | o | | | | | | | | | | | | | gettext@0.21.1/hj6szik
| | | |_|_|_|_|_|/| | | | | | | | | | | | | |
| | |/| | | | | |/| | | | | | | | | | | | | |
| | | | | | | |/| | | | | | | | | | | | | | |
| | | | | | | | | |\ \ \ \ \ \ \ \ \ \ \ \ \ \
| | | | | | | | | | |\ \ \ \ \ \ \ \ \ \ \ \ \ \
| | | | | | | | | | | |_|_|_|_|_|_|_|/ / / / / /
| | | | | | | | | | |/| | | | | | | | | | | | |
| | | | | | | | | | | |\ \ \ \ \ \ \ \ \ \ \ \ \
| | | | | | | | | | | | | |_|/ / / / / / / / / /
| | | | | | | | | | | | |/| | | | | | | | | | |
| | | | | | | | | o | | | | | | | | | | | | | | tar@1.34/kawegoy
| | | |_|_|_|_|_|/| | | | | | | | | | | | | | |
| | |/| | | | | | | | | | | | | | | | | | | | |
| | | | | | | | | |\ \ \ \ \ \ \ \ \ \ \ \ \ \ \
| | | | | | | | | | |\ \ \ \ \ \ \ \ \ \ \ \ \ \ \
| | | | | | | | | | | |\ \ \ \ \ \ \ \ \ \ \ \ \ \ \
| | | | | | | | | | | | |_|/ / / / / / / / / / / / /
| | | | | | | | | | | |/| | | | | | | | | | | | | |
| | | | | | | | | | | | |/ / / / / / / / / / / / /
| | | | | | | | | o | | | | | | | | | | | | | | | zstd@1.5.2/fprmzmo
| | | | | | | | | / / / / / / / / / / / / / / /
| | | | o | | | | | | | | | | | | | | | | | | | sqlite@3.39.4/vmf7qax
| |_|_|/| | | | | | | | | | | | | | | | | | | |
|/| | | | | | | | | | | | | | | | | | | | | | |
| | | | |/ / / / / / / / / / / / / / / / / / /
| | | | | | | | o | | | | | | | | | | | | | | pigz@2.7/wod35ny
| |_|_|_|_|_|_|/ / / / / / / / / / / / / / /
|/| | | | | | | | | | | | | | | | | | | | |
| | | | | | | | | | | | | | | | | | | | | o cmake@3.24.3/stszbns
| | | | | | |_|_|_|_|_|_|_|_|_|_|_|_|_|_|/|
| | | | | |/| |_|_|_|_|_|_|_|_|_|_|_|_|_|/
| | | | | | |/| | | | | | | | | | | | | |
| | | | | o | | | | | | | | | | | | | | | openssl@1.1.1s/yr4z2pt
| |_|_|_|/| | | | | | | | | | | | | | | |
|/| | | | | | | | | | | | | | | | | | | |
| | | | | |\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \
| | | | | | | | | | | | | | | | o | | | | | automake@1.16.5/rxjqnjw
| | | | | | |_|_|_|_|_|_|_|_|_|/| | | | | |
| | | | | |/| | | | | | | | | | | | | | | |
| | | | | | | | | | | | | | | | |/ / / / /
| | | | | | | | | | | | | | | | o | | | | autoconf@2.69/btoteei
| | | | | | |_|_|_|_|_|_|_|_|_|/| | | | |
| | | | | |/| | | | | | | | | |/ / / / /
| | | | | | | | | | | | | | |/| | | | |
| | | | | o | | | | | | | | | | | | | | perl@5.36.0/eydiwim
| |_|_|_|/| | | | | | | | | | | | | | |
|/| | | | | | | | | | | | | | | | | | |
| | | | | |\ \ \ \ \ \ \ \ \ \ \ \ \ \ \
| | | | | | |_|_|_|_|_|_|/ / / / / / / /
| | | | | |/| | | | | | | | | | | | | |
| | | | | | |\ \ \ \ \ \ \ \ \ \ \ \ \ \
| | | | | | | |_|_|_|_|/ / / / / / / / /
| | | | | | |/| | | | | | | | | | | | |
| | | | | | | | | | | | | | | | | | o | hwloc@2.8.0/5yywrk2
| | |_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|/| |
| |/| | | | | | | | |_|_|_|_|_|_|_|/| |
| | | | | | | | | |/| | | |_|_|_|_|/| |
| | | | | | | | | | | | |/| | | | |/ /
| | | | | | | | | | | | | | | | |/| |
| | | | | | | | | | | | o | | | | | | libxml2@2.10.1/4aq5aj2
| |_|_|_|_|_|_|_|_|_|_|/| | | | | | |
|/| |_|_|_|_|_|_|_|_|_|/| | | | | | |
| |/| |_|_|_|_|_|_|_|_|/| | | | | | |
| | |/| | | | | | | | |/ / / / / / /
o | | | | | | | | | | | | | | | | | zlib@1.2.13/2hfr5rb
/ / / / / / / / / / / / / / / / /
| o | | | | | | | | | | | | | | | xz@5.2.7/nrwxyth
| / / / / / / / / / / / / / / /
| | | | | | | | | | | | | o | | libpciaccess@0.16/p7f5n6q
| |_|_|_|_|_|_|_|_|_|_|_|/| | |
|/| | | | | | | | | | | |/| | |
| | | | | | | | | | | | | o | | util-macros@1.19.3/ao5w53r
| | | | | | | | | | | | | / /
| o | | | | | | | | | | | | | util-linux-uuid@2.38.1/eayyoxj
|/ / / / / / / / / / / / / /
| | o | | | | | | | | | | | gdbm@1.23/cpmynty
| |/ / / / / / / / / / / /
| o | | | | | | | | | | | readline@8.1.2/kgyvtw5
| | |_|_|/ / / / / / / /
| |/| | | | | | | | | |
| o | | | | | | | | | | ncurses@6.3/zcuawli
|/ / / / / / / / / / /
o | | | | | | | | | | pkgconf@1.8.0/k2lfw6f
/ / / / / / / / / /
| | | | | | | o | | libtool@2.4.7/bdxu4wn
| | | | | | |/ / /
| | | | | | o | | m4@1.4.19/z7d5q4f
| | | | | | |\ \ \
| | | | | | o | | | libsigsegv@2.13/e262sf6
| | | | | | / / /
| | | | | o | | | expat@2.4.8/j5k5nzg
| | | | | o | | | libbsd@0.11.5/qieib3t
| | | | | o | | | libmd@1.0.4/miq3rrs
| | | | | / / /
o | | | | | | | bzip2@1.0.8/cxcreln
| |_|_|_|/ / /
|/| | | | | |
o | | | | | | diffutils@3.8/c3uhkcj
| |_|_|/ / /
|/| | | | |
o | | | | | libiconv@1.16/ltvovvv
/ / / / /
| | o | | libffi@3.4.2/qzq4b7h
| | / /
| | o | libfabric@1.16.1/u2kjaxd
| | /
| | o findutils@4.9.0/fxoomyc
| |
| o ca-certificates-mozilla@2022-10-11/aurd37j
|
o berkeley-db@18.1.40/53fb72w
HDF5 is more complicated than our basic example of zlib and Tcl, but it’s still within the realm of software that an experienced HPC user could reasonably expect to manually install given a bit of time. Now let’s look at an even more complicated package.
$ spack install trilinos
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/pkgconf-1.8.0-k2lfw6fht6zvsfihvx3avihboi3uv455
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/ca-certificates-mozilla-2022-10-11-aurd37jjebxaqzs73saip5v6hgfu3foj
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/berkeley-db-18.1.40-53fb72wziswrec6tkbjpowshkul2nsk4
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/libiconv-1.16-ltvovvvjgmlvy4m2pn365cy6p5dysajq
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/zlib-1.2.13-2hfr5rbzefrxf6t6kv4trbsl63puaza6
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/libsigsegv-2.13-e262sf6ptgnmyu7zkflzp3ycbdfqz7hf
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/util-macros-1.19.3-ao5w53rpwhgfruk2zrqcehlov5slestd
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/xz-5.2.7-nrwxythffgfumjv7skmgdjtxaunlmqau
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/zstd-1.5.2-fprmzmoubdjdr663rprctp2tuqiv5apu
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/ncurses-6.3-zcuawlif55qhuknvbk4jez7xjcxhnydf
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/diffutils-3.8-c3uhkcjt7tagz2djrd6r2b6b3c2tia3s
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/pigz-2.7-wod35nye4qcrkbopr23zoy5qb3ywp3v3
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/libxml2-2.10.1-4aq5aj2n5u2n3dbrb76pnhoil6tv3e4e
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/readline-8.1.2-kgyvtw5h6mi5nms32x3vzgbw32ymmfwa
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/libedit-3.1-20210216-6pzeykrtvrkpbw6u3mq6likd4ktvah76
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/m4-1.4.19-z7d5q4f2qzxejx4xxdrj45q5gxur6q7b
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/bzip2-1.0.8-cxcrelnw64jh6lvhzb6pfar7nijv6us6
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/gdbm-1.23-cpmyntybsnm3se7lfnvqosbiqzrcg2kq
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/libtool-2.4.7-bdxu4wnbhlmvj6sh5y7uynrldzepiilz
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/tar-1.34-kawegoyhusotpo5mlsqnjqf6ngrjyj2w
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/perl-5.36.0-eydiwimku2cctu6dsom3yvfxxjmqyr4w
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/libpciaccess-0.16-p7f5n6q6kwnzq7syvqbslnotl72yxs23
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/gettext-0.21.1-hj6szikaqzdpxa36gk4w72m4czhwd6gu
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/openssl-1.1.1s-yr4z2pt4jnp5fltumr2my3badazsarz2
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/bison-3.8.2-wobmzgvlc235muaaxwehzblkgcnhvwtn
==> Installing openblas-0.3.21-3db4ryrsdfg5b7wzxeruwdhhx3lt7uux
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-openblas-0.3.21-3db4ryrsdfg5b7wzxeruwdhhx3lt7uux.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/openblas-0.3.21/linux-ubuntu18.04-x86_64-gcc-7.5.0-openblas-0.3.21-3db4ryrsdfg5b7wzxeruwdhhx3lt7uux.spack
==> Extracting openblas-0.3.21-3db4ryrsdfg5b7wzxeruwdhhx3lt7uux from binary cache
==> openblas: Successfully installed openblas-0.3.21-3db4ryrsdfg5b7wzxeruwdhhx3lt7uux
Fetch: 0.22s. Build: 0.97s. Total: 1.19s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/openblas-0.3.21-3db4ryrsdfg5b7wzxeruwdhhx3lt7uux
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/autoconf-2.69-btoteeiz74epw4kulm7aecae4cxraxua
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/hwloc-2.8.0-5yywrk2zoib75deet4eu4ocxim2ldngq
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/cmake-3.24.3-stszbnscxrtgzqrwmx2wfwsuntf47mpy
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/libevent-2.1.12-nblr6w4gwbdyhjz2z5lg5pseztxnb7gh
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/krb5-1.19.3-y6ek4vz7ntj6qw26jv2trb3ok4m5koxy
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/automake-1.16.5-rxjqnjw5jkrbym5x4yshogm3f262crre
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/pmix-4.1.2-76ul6unbdppxalfkkxjqzoky7lu4jqpo
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/openssh-9.1p1-xevso22q5f5fb2bqp5lhuutgvrqtiolo
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/numactl-2.0.14-qbwqmk6qylskqtyrfuyfp36f465bxrrk
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/openmpi-4.1.4-mfxvu5fnaac33f4pw25rjrojafbbupwb
==> Installing trilinos-13.0.1-brfmatydwbrssme6d6bnwcsh5spxv7zz
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-trilinos-13.0.1-brfmatydwbrssme6d6bnwcsh5spxv7zz.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/trilinos-13.0.1/linux-ubuntu18.04-x86_64-gcc-7.5.0-trilinos-13.0.1-brfmatydwbrssme6d6bnwcsh5spxv7zz.spack
==> Extracting trilinos-13.0.1-brfmatydwbrssme6d6bnwcsh5spxv7zz from binary cache
==> trilinos: Successfully installed trilinos-13.0.1-brfmatydwbrssme6d6bnwcsh5spxv7zz
Fetch: 0.25s. Build: 6.08s. Total: 6.33s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/trilinos-13.0.1-brfmatydwbrssme6d6bnwcsh5spxv7zz
Now we’re starting to see the power of Spack. Trilinos in its default configuration has 23 top level dependencies, many of which have dependencies of their own. Installing more complex packages can take days or weeks even for an experienced user. Although we’ve done a binary installation for the tutorial, a source installation of Trilinos using Spack takes about 3 hours (depending on the system), but only 20 seconds of programmer time.
Spack manages consistency of the entire DAG. Every MPI dependency will be satisfied by the same configuration of MPI, etc. If we install Trilinos again specifying a dependency on our previous HDF5 built with MPICH:
$ spack install trilinos +hdf5 ^hdf5+hl+mpi ^mpich
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/pkgconf-1.8.0-k2lfw6fht6zvsfihvx3avihboi3uv455
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/ca-certificates-mozilla-2022-10-11-aurd37jjebxaqzs73saip5v6hgfu3foj
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/berkeley-db-18.1.40-53fb72wziswrec6tkbjpowshkul2nsk4
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/libiconv-1.16-ltvovvvjgmlvy4m2pn365cy6p5dysajq
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/zlib-1.2.13-2hfr5rbzefrxf6t6kv4trbsl63puaza6
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/findutils-4.9.0-fxoomycyzatn7nzlioglzjir3lgs5kuk
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/libsigsegv-2.13-e262sf6ptgnmyu7zkflzp3ycbdfqz7hf
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/util-macros-1.19.3-ao5w53rpwhgfruk2zrqcehlov5slestd
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/xz-5.2.7-nrwxythffgfumjv7skmgdjtxaunlmqau
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/libfabric-1.16.1-u2kjaxdisx652qhefe2ibofiewkdgstr
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/libmd-1.0.4-miq3rrs534mewt3w5r3wd5jp3lkk7y25
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/zstd-1.5.2-fprmzmoubdjdr663rprctp2tuqiv5apu
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/libffi-3.4.2-qzq4b7hjmtrswtnnezcytreqg4vtsgi5
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/util-linux-uuid-2.38.1-eayyoxjdfrc2wivabs5jbipcofeluyyo
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/ncurses-6.3-zcuawlif55qhuknvbk4jez7xjcxhnydf
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/diffutils-3.8-c3uhkcjt7tagz2djrd6r2b6b3c2tia3s
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/pigz-2.7-wod35nye4qcrkbopr23zoy5qb3ywp3v3
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/libxml2-2.10.1-4aq5aj2n5u2n3dbrb76pnhoil6tv3e4e
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/libbsd-0.11.5-qieib3tiyp74ps4kn3jail7bot35t7hp
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/readline-8.1.2-kgyvtw5h6mi5nms32x3vzgbw32ymmfwa
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/m4-1.4.19-z7d5q4f2qzxejx4xxdrj45q5gxur6q7b
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/bzip2-1.0.8-cxcrelnw64jh6lvhzb6pfar7nijv6us6
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/expat-2.4.8-j5k5nzgsbhue6ylglt4gtrnm6okuvsj6
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/gdbm-1.23-cpmyntybsnm3se7lfnvqosbiqzrcg2kq
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/sqlite-3.39.4-vmf7qax3kowjkec5bzohcqvo5rqgm3xx
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/libtool-2.4.7-bdxu4wnbhlmvj6sh5y7uynrldzepiilz
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/tar-1.34-kawegoyhusotpo5mlsqnjqf6ngrjyj2w
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/perl-5.36.0-eydiwimku2cctu6dsom3yvfxxjmqyr4w
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/libpciaccess-0.16-p7f5n6q6kwnzq7syvqbslnotl72yxs23
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/gettext-0.21.1-hj6szikaqzdpxa36gk4w72m4czhwd6gu
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/autoconf-2.69-btoteeiz74epw4kulm7aecae4cxraxua
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/openblas-0.3.21-3db4ryrsdfg5b7wzxeruwdhhx3lt7uux
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/openssl-1.1.1s-yr4z2pt4jnp5fltumr2my3badazsarz2
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/hwloc-2.8.0-5yywrk2zoib75deet4eu4ocxim2ldngq
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/automake-1.16.5-rxjqnjw5jkrbym5x4yshogm3f262crre
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/cmake-3.24.3-stszbnscxrtgzqrwmx2wfwsuntf47mpy
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/python-3.10.8-cyf55fezf7ib2o6wqflx2jo7xz6tobwh
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/yaksa-0.2-tlfr5qwqhalsfrp732iewcdrjalvtjcl
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/mpich-4.0.2-vbkcftfrezurdhekzxpycihudiv5kyzy
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/hdf5-1.12.2-nc7yve6lcatumow4jja6dvqudot4j2lp
==> Installing trilinos-13.0.1-zcxy3l7xnasdsowy4ybfty3whv7nyqk6
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-trilinos-13.0.1-zcxy3l7xnasdsowy4ybfty3whv7nyqk6.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/trilinos-13.0.1/linux-ubuntu18.04-x86_64-gcc-7.5.0-trilinos-13.0.1-zcxy3l7xnasdsowy4ybfty3whv7nyqk6.spack
==> Extracting trilinos-13.0.1-zcxy3l7xnasdsowy4ybfty3whv7nyqk6 from binary cache
==> trilinos: Successfully installed trilinos-13.0.1-zcxy3l7xnasdsowy4ybfty3whv7nyqk6
Fetch: 0.49s. Build: 6.21s. Total: 6.70s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/trilinos-13.0.1-zcxy3l7xnasdsowy4ybfty3whv7nyqk6
We see that every package in the Trilinos DAG that depends on MPI now uses MPICH.
$ spack find -d trilinos
-- linux-ubuntu18.04-x86_64 / gcc@7.5.0 -------------------------
trilinos@13.0.1
cmake@3.24.3
ncurses@6.3
openssl@1.1.1s
ca-certificates-mozilla@2022-10-11
hwloc@2.8.0
libpciaccess@0.16
libtool@2.4.7
util-macros@1.19.3
libxml2@2.10.1
libiconv@1.16
xz@5.2.7
pkgconf@1.8.0
openblas@0.3.21
perl@5.36.0
berkeley-db@18.1.40
bzip2@1.0.8
diffutils@3.8
gdbm@1.23
readline@8.1.2
openmpi@4.1.4
numactl@2.0.14
autoconf@2.69
automake@1.16.5
m4@1.4.19
libsigsegv@2.13
openssh@9.1p1
krb5@1.19.3
bison@3.8.2
gettext@0.21.1
tar@1.34
pigz@2.7
zstd@1.5.2
libedit@3.1-20210216
pmix@4.1.2
libevent@2.1.12
zlib@1.2.13
trilinos@13.0.1
cmake@3.24.3
ncurses@6.3
openssl@1.1.1s
ca-certificates-mozilla@2022-10-11
hdf5@1.12.2
pkgconf@1.8.0
zlib@1.2.13
hwloc@2.8.0
libpciaccess@0.16
libtool@2.4.7
util-macros@1.19.3
libxml2@2.10.1
libiconv@1.16
xz@5.2.7
mpich@4.0.2
findutils@4.9.0
libfabric@1.16.1
yaksa@0.2
autoconf@2.69
automake@1.16.5
m4@1.4.19
diffutils@3.8
libsigsegv@2.13
python@3.10.8
expat@2.4.8
libbsd@0.11.5
libmd@1.0.4
gettext@0.21.1
tar@1.34
pigz@2.7
zstd@1.5.2
libffi@3.4.2
readline@8.1.2
sqlite@3.39.4
util-linux-uuid@2.38.1
openblas@0.3.21
perl@5.36.0
berkeley-db@18.1.40
bzip2@1.0.8
gdbm@1.23
==> 2 installed packages
As we discussed before, the spack find -d
command shows the
dependency information as a tree. While that is often sufficient, many
complicated packages, including Trilinos, have dependencies that
cannot be fully represented as a tree. Again, the spack graph
command shows the full DAG of the dependency information.
$ spack graph trilinos
o trilinos@13.0.1/brfmaty
|\
| |\
| | |\
o | | | openmpi@4.1.4/mfxvu5f
|\ \ \ \
| |\ \ \ \
| | |\ \ \ \
| | | |\ \ \ \
| | | | |\ \ \ \
| | | | | |\ \ \ \
| | | | | | | |/ /
| | | | | | |/| |
| | | | o | | | | openssh@9.1p1/xevso22
| |_|_|/| | | | |
|/| | | | | | | |
| | | | |\ \ \ \ \
| | | | | |\ \ \ \ \
| | | | | | |\ \ \ \ \
| | | | | | | o | | | | krb5@1.19.3/y6ek4vz
| | | | | |_|/| | | | |
| | | | |/| | | | | | |
| | | | | | | |\ \ \ \ \
| | | | | | | | |\ \ \ \ \
| | | | | | | o | | | | | | gettext@0.21.1/hj6szik
| | | | | | |/| | | | | | |
| | | | | |/| | | | | | | |
| | | | | | | |\ \ \ \ \ \ \
| | | | | | | | |\ \ \ \ \ \ \
| | | | | | | | | |\ \ \ \ \ \ \
| | | | | | | | | | |\ \ \ \ \ \ \
| | | | | | | | o | | | | | | | | | tar@1.34/kawegoy
| | | | | | | |/| | | | | | | | | |
| | | | | | | | |\ \ \ \ \ \ \ \ \ \
| | | | | | | | | |\ \ \ \ \ \ \ \ \ \
| | | | | | | | | | |\ \ \ \ \ \ \ \ \ \
| | | | | | | | | | | |_|/ / / / / / / /
| | | | | | | | | | |/| | | | | | | | |
| | | | | | | | | | | |/ / / / / / / /
| | | | | | | | o | | | | | | | | | | zstd@1.5.2/fprmzmo
| | | | | | | | / / / / / / / / / /
| o | | | | | | | | | | | | | | | | pmix@4.1.2/76ul6un
| |\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \
| | | |_|_|_|_|_|_|_|_|_|_|_|_|/ / /
| | |/| | | | | | | | | | | | | | |
| | | | | | | | | o | | | | | | | | pigz@2.7/wod35ny
| |_|_|_|_|_|_|_|/ / / / / / / / /
|/| | | | | | | | | | | | | | | |
| o | | | | | | | | | | | | | | | libevent@2.1.12/nblr6w4
| | |_|_|/ / / / / / / / / / / /
| |/| | | | | | | | | | | | | |
| | | | | | | | | | | | | | | o cmake@3.24.3/stszbns
| | |_|_|_|_|_|_|_|_|_|_|_|_|/|
| |/| | | | |_|_|_|_|_|_|_|_|/
| | | | | |/| | | | | | | | |
| o | | | | | | | | | | | | | openssl@1.1.1s/yr4z2pt
|/| | | | | | | | | | | | | |
| |\ \ \ \ \ \ \ \ \ \ \ \ \ \
| | |_|_|/ / / / / / / / / / /
| |/| | | | | | | | | | | | |
| | | | | | | | | | | | | | o openblas@0.3.21/3db4ryr
| | |_|_|_|_|_|_|_|_|_|_|_|/
| |/| | | | | | | | | | | |
| | | | | | | | | | | | | o numactl@2.0.14/qbwqmk6
| | | | | | | | | | | | | |\
| | | | | | | | | | | | | | |\
| | | | | | | | | | | | | | | |\
| | | | | | | | | | | | o | | | | bison@3.8.2/wobmzgv
| | |_|_|_|_|_|_|_|_|_|/| | | | |
| |/| | | | | | | | | |/| | | | |
| | | | | | | | | | | | |/ / / /
| | | | | | | | | | | | | | o | automake@1.16.5/rxjqnjw
| | |_|_|_|_|_|_|_|_|_|_|_|/| |
| |/| | | | | | | | | | | | | |
| | | | | | | | | | | | | | |/
| | | | | | | | | | | | | | o autoconf@2.69/btoteei
| | |_|_|_|_|_|_|_|_|_|_|_|/|
| |/| | | | | | | | | | | |/
| | | | | | | | | | | | |/|
| o | | | | | | | | | | | | perl@5.36.0/eydiwim
|/| | | | | | | | | | | | |
| |\ \ \ \ \ \ \ \ \ \ \ \ \
| | |\ \ \ \ \ \ \ \ \ \ \ \ \
| | | |_|_|_|_|_|_|_|/ / / / /
| | |/| | | | | | | | | | | |
| | | | | o | | | | | | | | | hwloc@2.8.0/5yywrk2
| | | | | |\| | | | | | | | |
| | | | | |\ \ \ \ \ \ \ \ \ \
| | | | | | |_|/ / / / / / / /
| | | | | |/| | | | | | | | |
| | | | | | |\ \ \ \ \ \ \ \ \
| | | | | | | |_|_|_|_|/ / / /
| | | | | | |/| | | | | | | |
| | | | | | o | | | | | | | | libxml2@2.10.1/4aq5aj2
| |_|_|_|_|/| | | | | | | | |
|/| | | | | | | | | | | | | |
| | | | | | |\ \ \ \ \ \ \ \ \
| | | | | | | |_|_|_|/ / / / /
| | | | | | |/| | | | | | | |
| | | | | | | |\ \ \ \ \ \ \ \
| | | | | | | | |_|/ / / / / /
| | | | | | | |/| | | | | | |
| | | | | | | | | |/ / / / /
| | | | | | | | |/| | | | |
o | | | | | | | | | | | | | zlib@1.2.13/2hfr5rb
/ / / / / / / / / / / / /
| | | | | o | | | | | | | xz@5.2.7/nrwxyth
| | | | | / / / / / / /
| | | | | | | o | | | | libpciaccess@0.16/p7f5n6q
| | | | | | |/| | | | |
| | | | | |/| | | | | |
| | | | | | | |\ \ \ \ \
| | | | | | | | | |_|_|/
| | | | | | | | |/| | |
| | | | | | | o | | | | util-macros@1.19.3/ao5w53r
| | | | | | | / / / /
o | | | | | | | | | | gdbm@1.23/cpmynty
o | | | | | | | | | | readline@8.1.2/kgyvtw5
| |_|_|/ / / / / / /
|/| | | | | | | | |
| | | | | | | o | | libedit@3.1-20210216/6pzeykr
| |_|_|_|_|_|/| | |
|/| | | | |_|/ / /
| | | | |/| | | |
o | | | | | | | | ncurses@6.3/zcuawli
| |_|_|/ / / / /
|/| | | | | | |
o | | | | | | | pkgconf@1.8.0/k2lfw6f
/ / / / / / /
| | | | o | | libtool@2.4.7/bdxu4wn
| | | | | |/
| | | | |/|
| | | | o | m4@1.4.19/z7d5q4f
| | | | |\|
| | | | o | libsigsegv@2.13/e262sf6
| | | | /
o | | | | bzip2@1.0.8/cxcreln
| |_|_|/
|/| | |
o | | | diffutils@3.8/c3uhkcj
| |_|/
|/| |
o | | libiconv@1.16/ltvovvv
/ /
| o ca-certificates-mozilla@2022-10-11/aurd37j
|
o berkeley-db@18.1.40/53fb72w
You can control how the output is displayed with a number of options.
The ASCII output from spack graph
can be difficult to parse for
complicated packages. The output can be changed to the Graphviz
.dot
format using the --dot
flag.
$ spack graph --dot trilinos | dot -Tpdf > trilinos_graph.pdf
Uninstalling Packages¶
Earlier we installed many configurations each of zlib and Tcl. Now we will go through and uninstall some of those packages that we didn’t really need.
$ spack find -d tcl
-- linux-ubuntu18.04-x86_64 / clang@7.0.0 -----------------------
tcl@8.6.12
zlib@1.2.8
-- linux-ubuntu18.04-x86_64 / gcc@7.5.0 -------------------------
tcl@8.6.12
zlib@1.2.8
tcl@8.6.12
zlib@1.2.13
==> 3 installed packages
$ spack find zlib
-- linux-ubuntu18.04-x86_64 / clang@7.0.0 -----------------------
zlib@1.2.8 zlib@1.2.13
-- linux-ubuntu18.04-x86_64 / gcc@6.5.0 -------------------------
zlib@1.2.13
-- linux-ubuntu18.04-x86_64 / gcc@7.5.0 -------------------------
zlib@1.2.8 zlib@1.2.8 zlib@1.2.13
==> 6 installed packages
We can uninstall packages by spec using the same syntax as install.
$ spack uninstall -y zlib %gcc@6.5.0
==> Successfully uninstalled zlib@1.2.13%gcc@6.5.0+optimize+pic+shared build_system=makefile arch=linux-ubuntu18.04-x86_64/6izan4f
$ spack find -lf zlib
-- linux-ubuntu18.04-x86_64 / clang@7.0.0 -----------------------
2xcmtth zlib@1.2.8%clang fdbomoa zlib@1.2.13%clang
-- linux-ubuntu18.04-x86_64 / gcc@7.5.0 -------------------------
tolklcf zlib@1.2.8%gcc zqdhyiy zlib@1.2.8%gcc cppflags="-O3" 2hfr5rb zlib@1.2.13%gcc
==> 5 installed packages
We can also uninstall packages by referring only to their hash.
We can use either -f
(force) or -R
(remove dependents as well) to
remove packages that are required by another installed package.
$ spack uninstall zlib/2xc
==> Will not uninstall zlib@1.2.8%clang@7.0.0/2xcmtth
The following packages depend on it:
-- linux-ubuntu18.04-x86_64 / clang@7.0.0 -----------------------
36jwtbo tcl@8.6.12
==> Error: There are still dependents.
use `spack uninstall --dependents` to remove dependents too
$ spack uninstall -y -R zlib/2xc
==> Successfully uninstalled tcl@8.6.12%clang@7.0.0 build_system=autotools arch=linux-ubuntu18.04-x86_64/36jwtbo
==> Successfully uninstalled zlib@1.2.8%clang@7.0.0+optimize+pic+shared build_system=makefile arch=linux-ubuntu18.04-x86_64/2xcmtth
Spack will not uninstall packages that are not sufficiently
specified. The -a
(all) flag can be used to uninstall multiple
packages at once.
$ spack uninstall trilinos
==> Error: trilinos matches multiple packages:
-- linux-ubuntu18.04-x86_64 / gcc@7.5.0 -------------------------
brfmaty trilinos@13.0.1 zcxy3l7 trilinos@13.0.1
==> Error: You can either:
a) use a more specific spec, or
b) specify the spec by its hash (e.g. `spack uninstall /hash`), or
c) use `spack uninstall --all` to uninstall ALL matching specs.
$ spack uninstall /brf
y
==> The following packages will be uninstalled:
-- linux-ubuntu18.04-x86_64 / gcc@7.5.0 -------------------------
brfmaty trilinos@13.0.1
==> Do you want to proceed? [y/N] ==> Successfully uninstalled trilinos@13.0.1%gcc@7.5.0~adelus~adios2+amesos+amesos2+anasazi+aztec~basker+belos~boost~chaco~complex~cuda~cuda_rdc~debug~dtk+epetra+epetraext~epetraextbtf~epetraextexperimental~epetraextgraphreorderings~exodus+explicit_template_instantiation~float+fortran~gtest~hdf5~hypre+ifpack+ifpack2~intrepid~intrepid2~ipo~isorropia+kokkos~mesquite~minitensor+ml+mpi+muelu~mumps~nox~openmp~panzer~phalanx~piro~python~rocm~rocm_rdc~rol~rythmos+sacado~scorec~shards+shared~shylu~stk~stokhos~stratimikos~strumpack~suite-sparse~superlu~superlu-dist~teko~tempus~thyra+tpetra~trilinoscouplings~wrapper~x11~zoltan~zoltan2 build_system=cmake build_type=RelWithDebInfo cxxstd=14 gotype=long_long arch=linux-ubuntu18.04-x86_64/brfmaty
Advanced spack find
Usage¶
We will go over some additional uses for the spack find
command not
already covered in the Installing Spack and
Uninstalling Packages sections.
The spack find
command can accept what we call “anonymous specs.”
These are expressions in spec syntax that do not contain a package
name. For example, spack find ^mpich
will return every installed
package that depends on MPICH, and spack find cppflags="-O3"
will
return every package which was built with cppflags="-O3"
.
$ spack find ^mpich
-- linux-ubuntu18.04-x86_64 / gcc@7.5.0 -------------------------
hdf5@1.12.2 trilinos@13.0.1
==> 2 installed packages
$ spack find cppflags=-O3
-- linux-ubuntu18.04-x86_64 / gcc@7.5.0 -------------------------
zlib@1.2.8
==> 1 installed package
The find
command can also show which packages were installed
explicitly (rather than pulled in as a dependency) using the lowercase
-x
flag. The uppercase -X
flag shows implicit installs only.
The find
command can also show the path to which a Spack package
was installed using the -p
flag.
$ spack find -px
-- linux-ubuntu18.04-x86_64 / clang@7.0.0 -----------------------
zlib@1.2.13 /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/clang-7.0.0/zlib-1.2.13-fdbomoa6xopqvfi4a7jvad27yinnw47a
-- linux-ubuntu18.04-x86_64 / gcc@7.5.0 -------------------------
hdf5@1.12.2 /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/hdf5-1.12.2-3pu63bvsng2suyhyadbo5j2jhze3judm
hdf5@1.12.2 /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/hdf5-1.12.2-xfftbwlx2fmpxvfzg27vj6hk2pet45f2
hdf5@1.12.2 /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/hdf5-1.12.2-nc7yve6lcatumow4jja6dvqudot4j2lp
tcl@8.6.12 /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/tcl-8.6.12-rakrbasefv2odpemtbrfn2qrbpeq4jip
tcl@8.6.12 /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/tcl-8.6.12-v63n6wxe4a45dbmmpqbmjpfio3z7liej
trilinos@13.0.1 /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/trilinos-13.0.1-zcxy3l7xnasdsowy4ybfty3whv7nyqk6
zlib@1.2.8 /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/zlib-1.2.8-tolklcfv6vhiaoyvwr7vbbakns4mawum
zlib@1.2.8 /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/zlib-1.2.8-zqdhyiyvjrx6lhddpgv4h2nsysowhjxm
zlib@1.2.13 /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/zlib-1.2.13-2hfr5rbzefrxf6t6kv4trbsl63puaza6
==> 10 installed packages
Customizing Compilers¶
Spack manages a list of available compilers on the system, detected
automatically from the user’s PATH
variable. The spack
compilers
command is an alias for the command spack compiler list
.
$ spack compilers
==> Available compilers
-- clang ubuntu18.04-x86_64 -------------------------------------
clang@7.0.0
-- gcc ubuntu18.04-x86_64 ---------------------------------------
gcc@7.5.0 gcc@6.5.0
The compilers are maintained in a YAML file. Later in the tutorial you will learn how to configure compilers by hand for special cases. Spack also has tools to add compilers, and compilers built with Spack can be added to the configuration.
$ spack install gcc@8.4.0
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/libiconv-1.16-ltvovvvjgmlvy4m2pn365cy6p5dysajq
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/libsigsegv-2.13-e262sf6ptgnmyu7zkflzp3ycbdfqz7hf
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/berkeley-db-18.1.40-53fb72wziswrec6tkbjpowshkul2nsk4
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/pkgconf-1.8.0-k2lfw6fht6zvsfihvx3avihboi3uv455
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/zlib-1.2.13-2hfr5rbzefrxf6t6kv4trbsl63puaza6
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/diffutils-3.8-c3uhkcjt7tagz2djrd6r2b6b3c2tia3s
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/ncurses-6.3-zcuawlif55qhuknvbk4jez7xjcxhnydf
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/m4-1.4.19-z7d5q4f2qzxejx4xxdrj45q5gxur6q7b
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/bzip2-1.0.8-cxcrelnw64jh6lvhzb6pfar7nijv6us6
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/readline-8.1.2-kgyvtw5h6mi5nms32x3vzgbw32ymmfwa
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/libtool-2.4.7-bdxu4wnbhlmvj6sh5y7uynrldzepiilz
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/gdbm-1.23-cpmyntybsnm3se7lfnvqosbiqzrcg2kq
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/perl-5.36.0-eydiwimku2cctu6dsom3yvfxxjmqyr4w
==> Installing texinfo-6.5-hdyi7fuh542t3qqvlg54vyuzde2pxdf4
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-texinfo-6.5-hdyi7fuh542t3qqvlg54vyuzde2pxdf4.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/texinfo-6.5/linux-ubuntu18.04-x86_64-gcc-7.5.0-texinfo-6.5-hdyi7fuh542t3qqvlg54vyuzde2pxdf4.spack
==> Extracting texinfo-6.5-hdyi7fuh542t3qqvlg54vyuzde2pxdf4 from binary cache
==> texinfo: Successfully installed texinfo-6.5-hdyi7fuh542t3qqvlg54vyuzde2pxdf4
Fetch: 0.10s. Build: 0.37s. Total: 0.47s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/texinfo-6.5-hdyi7fuh542t3qqvlg54vyuzde2pxdf4
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/autoconf-2.69-btoteeiz74epw4kulm7aecae4cxraxua
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/automake-1.16.5-rxjqnjw5jkrbym5x4yshogm3f262crre
==> Installing gmp-6.2.1-iowhen4zynaexq7iy4m2hiifo5mrzbrd
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-gmp-6.2.1-iowhen4zynaexq7iy4m2hiifo5mrzbrd.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/gmp-6.2.1/linux-ubuntu18.04-x86_64-gcc-7.5.0-gmp-6.2.1-iowhen4zynaexq7iy4m2hiifo5mrzbrd.spack
==> Extracting gmp-6.2.1-iowhen4zynaexq7iy4m2hiifo5mrzbrd from binary cache
==> gmp: Successfully installed gmp-6.2.1-iowhen4zynaexq7iy4m2hiifo5mrzbrd
Fetch: 0.02s. Build: 0.26s. Total: 0.28s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/gmp-6.2.1-iowhen4zynaexq7iy4m2hiifo5mrzbrd
==> Installing mpfr-3.1.6-3brr36efadvhnhtggkuoowsko3go7aic
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-mpfr-3.1.6-3brr36efadvhnhtggkuoowsko3go7aic.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/mpfr-3.1.6/linux-ubuntu18.04-x86_64-gcc-7.5.0-mpfr-3.1.6-3brr36efadvhnhtggkuoowsko3go7aic.spack
==> Extracting mpfr-3.1.6-3brr36efadvhnhtggkuoowsko3go7aic from binary cache
==> mpfr: Successfully installed mpfr-3.1.6-3brr36efadvhnhtggkuoowsko3go7aic
Fetch: 0.01s. Build: 0.29s. Total: 0.30s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/mpfr-3.1.6-3brr36efadvhnhtggkuoowsko3go7aic
==> Installing mpc-1.1.0-l5bs2ru7ylkobccsbz7iw7w5akw7ycsd
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-mpc-1.1.0-l5bs2ru7ylkobccsbz7iw7w5akw7ycsd.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/mpc-1.1.0/linux-ubuntu18.04-x86_64-gcc-7.5.0-mpc-1.1.0-l5bs2ru7ylkobccsbz7iw7w5akw7ycsd.spack
==> Extracting mpc-1.1.0-l5bs2ru7ylkobccsbz7iw7w5akw7ycsd from binary cache
==> mpc: Successfully installed mpc-1.1.0-l5bs2ru7ylkobccsbz7iw7w5akw7ycsd
Fetch: 0.01s. Build: 0.26s. Total: 0.28s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/mpc-1.1.0-l5bs2ru7ylkobccsbz7iw7w5akw7ycsd
==> Installing gawk-5.1.1-dco3nzdpwnlybuvy7ymfpxobgszskgfr
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-gawk-5.1.1-dco3nzdpwnlybuvy7ymfpxobgszskgfr.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/gawk-5.1.1/linux-ubuntu18.04-x86_64-gcc-7.5.0-gawk-5.1.1-dco3nzdpwnlybuvy7ymfpxobgszskgfr.spack
==> Extracting gawk-5.1.1-dco3nzdpwnlybuvy7ymfpxobgszskgfr from binary cache
==> gawk: Successfully installed gawk-5.1.1-dco3nzdpwnlybuvy7ymfpxobgszskgfr
Fetch: 0.02s. Build: 0.29s. Total: 0.31s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/gawk-5.1.1-dco3nzdpwnlybuvy7ymfpxobgszskgfr
==> Installing gcc-8.4.0-uobbegc3e3qn7lktajfr53buov2vf72e
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64-gcc-7.5.0-gcc-8.4.0-uobbegc3e3qn7lktajfr53buov2vf72e.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu18.04-x86_64/gcc-7.5.0/gcc-8.4.0/linux-ubuntu18.04-x86_64-gcc-7.5.0-gcc-8.4.0-uobbegc3e3qn7lktajfr53buov2vf72e.spack
==> Extracting gcc-8.4.0-uobbegc3e3qn7lktajfr53buov2vf72e from binary cache
==> gcc: Successfully installed gcc-8.4.0-uobbegc3e3qn7lktajfr53buov2vf72e
Fetch: 0.33s. Build: 7.47s. Total: 7.81s.
[+] /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/gcc-8.4.0-uobbegc3e3qn7lktajfr53buov2vf72e
$ spack find -p gcc
-- linux-ubuntu18.04-x86_64 / gcc@7.5.0 -------------------------
gcc@8.4.0 /home/spack/spack/opt/spack/linux-ubuntu18.04-x86_64/gcc-7.5.0/gcc-8.4.0-uobbegc3e3qn7lktajfr53buov2vf72e
==> 1 installed package
We can add GCC to Spack as an available compiler using the spack
compiler add
command. This will allow future packages to build with
gcc@8.4.0
. To avoid having to copy and paste GCC’s path, we can use
spack location -i
to get the installation prefix.
$ spack compiler add "$(spack location -i gcc@8.4.0)"
==> Added 1 new compiler to /home/spack/.spack/linux/compilers.yaml
gcc@8.4.0
==> Compilers are defined in the following files:
/home/spack/.spack/linux/compilers.yaml
We can also remove compilers from our configuration using spack compiler remove <compiler_spec>
$ spack compiler remove gcc@8.4.0
==> Removed compiler gcc@8.4.0