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 22.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.23.

$ git clone --depth=2 --branch=releases/v0.23 https://github.com/spack/spack.git ~/spack
Cloning into '/home/spack5/spack'...
remote: Enumerating objects: 20970, done.K
remote: Counting objects: 100% (20970/20970), done.K
remote: Compressing objects: 100% (11467/11467), done.K
Receiving objects: 100% (20970/20970), 14.78 MiB | 23.43 MiB/s, done.
remote: Total 20970 (delta 1785), reused 14006 (delta 1489), pack-reused 0 (from 0)K
Resolving deltas: 100% (1785/1785), 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				lrslib						py-flit-scm				      r-assertthat
3proxy				lrzip						py-flufl-lock				      r-automap
7zip				lsd						py-fluiddyn				      r-backports
abacus				lsf						py-fluidfft				      r-bamsignals
abduco				lshw						py-fluidfft-builder			      r-base64

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-eventlet			     py-munkres					  py-pyupgrade
py-4suite-xml				  py-evodiff			     py-murmurhash				  py-pyusb
py-a2wsgi				  py-exarl			     py-mutagen					  py-pyutilib
py-abcpy				  py-exceptiongroup		     py-mx					  py-pyuwsgi
py-abipy				  py-execnet			     py-mxfold2					  py-pyvcf

Installing Packages

Installing a package with Spack is very simple. To install a piece of software simply type,

$ spack install <package_name>

Let’s go ahead and install gmake,

$ spack install gmake
==> Fetching https://ghcr.io/v2/spack/bootstrap-buildcache-v1/blobs/sha256:8d2764eefa443c29c7c9120079e3bbe7576bbc496b15843ad18d18892338a5ba
==> Fetching https://ghcr.io/v2/spack/bootstrap-buildcache-v1/blobs/sha256:a4abec667660307ad5cff0a616d6651e187cc7b1386fd8cd4b6b288a01614076
==> Installing "clingo-bootstrap@=spack%gcc@=10.2.1~docs+ipo+optimized+python+static_libstdcpp build_system=cmake build_type=Release generator=make patches=bebb819,ec99431 arch=linux-centos7-x86_64" from a buildcache
[+] /usr (external glibc-2.35-a7drdl4tlx4bu3mzhor75pskvd3pdot6)
==> Installing gcc-runtime-11.4.0-hshzy762rns57ibvxiyi3qqvc4nehse2 [2/3]
==> No binary for gcc-runtime-11.4.0-hshzy762rns57ibvxiyi3qqvc4nehse2 found: installing from source
==> No patches needed for gcc-runtime
==> gcc-runtime: Executing phase: 'install'
==> gcc-runtime: Successfully installed gcc-runtime-11.4.0-hshzy762rns57ibvxiyi3qqvc4nehse2
  Stage: 0.00s.	 Install: 0.05s.  Post-install: 0.04s.	Total: 0.12s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gcc-runtime-11.4.0-hshzy762rns57ibvxiyi3qqvc4nehse2
==> Installing gmake-4.4.1-srkzfjru5z55bl5gy24dbjsrvqwg5fom [3/3]
==> No binary for gmake-4.4.1-srkzfjru5z55bl5gy24dbjsrvqwg5fom found: installing from source
==> Fetching https://mirror.spack.io/_source-cache/archive/dd/dd16fb1d67bfab79a72f5e8390735c49e3e8e70b4945a15ab1f81ddb78658fb3.tar.gz
==> No patches needed for gmake
==> gmake: Executing phase: 'install'
==> gmake: Successfully installed gmake-4.4.1-srkzfjru5z55bl5gy24dbjsrvqwg5fom
  Stage: 0.10s.	 Install: 11.58s.  Post-install: 0.01s.	 Total: 11.72s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gmake-4.4.1-srkzfjru5z55bl5gy24dbjsrvqwg5fom

You will see Spack installed gmake, gcc-runtime, and glibc. The glibc and gcc-runtime packages are automatically tracked by Spack to manage consistency requirements among compiler runtimes. These do not represent separate installs from source, but represent aspects of the compiler Spack used for the install. For the rest of this section, we will ignore these components and focus on the rest of the install.

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
gpg: key F85815B32355CB19: public key "e4s-uo-spack-01" imported
gpg: Total number processed: 1
gpg:		   imported: 1
gpg: inserting ownertrust of 6
gpg: key A8E0CA3C1C2ADA2F: 5 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: marginals needed: 3  completes needed: 1  trust model: pgp
gpg: depth: 0  valid:	1  signed:   0	trust: 0-, 0q, 0n, 0m, 0f, 1u
gpg: inserting ownertrust of 6
gpg: key BC86F6FB94429164: public key "Spack CI Key <maintainers@spack.io>" imported
gpg: Total number processed: 1
gpg:		   imported: 1
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-ng %clang
[+] /usr (external glibc-2.35-xvsfmyvk5j33hkz4jhb7vwwsxz4ynras)
==> Installing gmake-4.4.1-gcbcod5uiky74ebvkj2y3kapw6cved7p [2/3]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-clang-14.0.0-gmake-4.4.1-gcbcod5uiky74ebvkj2y3kapw6cved7p.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/clang-14.0.0/gmake-4.4.1/linux-ubuntu22.04-x86_64_v3-clang-14.0.0-gmake-4.4.1-gcbcod5uiky74ebvkj2y3kapw6cved7p.spack
==> Extracting gmake-4.4.1-gcbcod5uiky74ebvkj2y3kapw6cved7p from binary cache
==> gmake: Successfully installed gmake-4.4.1-gcbcod5uiky74ebvkj2y3kapw6cved7p
  Search: 0.00s.  Fetch: 0.15s.	 Install: 0.06s.  Extract: 0.05s.  Relocate: 0.01s.  Total: 0.21s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/clang-14.0.0/gmake-4.4.1-gcbcod5uiky74ebvkj2y3kapw6cved7p
==> Installing zlib-ng-2.2.1-jjykcjtfyoezsckykaklun6a75bzd24o [3/3]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-clang-14.0.0-zlib-ng-2.2.1-jjykcjtfyoezsckykaklun6a75bzd24o.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/clang-14.0.0/zlib-ng-2.2.1/linux-ubuntu22.04-x86_64_v3-clang-14.0.0-zlib-ng-2.2.1-jjykcjtfyoezsckykaklun6a75bzd24o.spack
==> Extracting zlib-ng-2.2.1-jjykcjtfyoezsckykaklun6a75bzd24o from binary cache
==> zlib-ng: Successfully installed zlib-ng-2.2.1-jjykcjtfyoezsckykaklun6a75bzd24o
  Search: 0.00s.  Fetch: 0.01s.	 Install: 0.02s.  Extract: 0.01s.  Relocate: 0.01s.  Total: 0.03s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/clang-14.0.0/zlib-ng-2.2.1-jjykcjtfyoezsckykaklun6a75bzd24o

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-ng.

$ spack versions zlib-ng
==> Safe versions (already checksummed):
  2.2.1	 2.1.7	2.1.6  2.1.5  2.1.4  2.0.7  2.0.0
==> Remote versions (not yet checksummed):
  2.2.2	 2.2.0	2.1.8  2.1.3  2.1.2

The @ sigil is used to specify versions, both of packages and of compilers.

$ spack install zlib-ng@2.0.7
[+] /usr (external glibc-2.35-a7drdl4tlx4bu3mzhor75pskvd3pdot6)
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gcc-runtime-11.4.0-hshzy762rns57ibvxiyi3qqvc4nehse2
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gmake-4.4.1-srkzfjru5z55bl5gy24dbjsrvqwg5fom
==> Installing zlib-ng-2.0.7-ocxrmffc7qnibijshhygluei5qiycvja [4/4]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-zlib-ng-2.0.7-ocxrmffc7qnibijshhygluei5qiycvja.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/zlib-ng-2.0.7/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-zlib-ng-2.0.7-ocxrmffc7qnibijshhygluei5qiycvja.spack
==> Extracting zlib-ng-2.0.7-ocxrmffc7qnibijshhygluei5qiycvja from binary cache
==> zlib-ng: Successfully installed zlib-ng-2.0.7-ocxrmffc7qnibijshhygluei5qiycvja
  Search: 0.00s.  Fetch: 0.15s.	 Install: 0.06s.  Extract: 0.04s.  Relocate: 0.01s.  Total: 0.21s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/zlib-ng-2.0.7-ocxrmffc7qnibijshhygluei5qiycvja
$ spack install zlib-ng %gcc@10
[+] /usr (external glibc-2.35-tcngwuvjectyn7o74ymmyeqhll2enure)
==> Installing gcc-runtime-10.5.0-g7dc4oue6rp33tvie6pbl4imqusxbmkq [2/4]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-10.5.0-gcc-runtime-10.5.0-g7dc4oue6rp33tvie6pbl4imqusxbmkq.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-10.5.0/gcc-runtime-10.5.0/linux-ubuntu22.04-x86_64_v3-gcc-10.5.0-gcc-runtime-10.5.0-g7dc4oue6rp33tvie6pbl4imqusxbmkq.spack
==> Extracting gcc-runtime-10.5.0-g7dc4oue6rp33tvie6pbl4imqusxbmkq from binary cache
==> gcc-runtime: Successfully installed gcc-runtime-10.5.0-g7dc4oue6rp33tvie6pbl4imqusxbmkq
  Search: 0.00s.  Fetch: 0.15s.	 Install: 0.40s.  Extract: 0.37s.  Relocate: 0.03s.  Total: 0.56s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-10.5.0/gcc-runtime-10.5.0-g7dc4oue6rp33tvie6pbl4imqusxbmkq
==> Installing gmake-4.4.1-he2qdcb6bg6z2wj5y3qmk2opp6t2ohve [3/4]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-10.5.0-gmake-4.4.1-he2qdcb6bg6z2wj5y3qmk2opp6t2ohve.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-10.5.0/gmake-4.4.1/linux-ubuntu22.04-x86_64_v3-gcc-10.5.0-gmake-4.4.1-he2qdcb6bg6z2wj5y3qmk2opp6t2ohve.spack
==> Extracting gmake-4.4.1-he2qdcb6bg6z2wj5y3qmk2opp6t2ohve from binary cache
==> gmake: Successfully installed gmake-4.4.1-he2qdcb6bg6z2wj5y3qmk2opp6t2ohve
  Search: 0.00s.  Fetch: 0.01s.	 Install: 0.03s.  Extract: 0.02s.  Relocate: 0.01s.  Total: 0.04s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-10.5.0/gmake-4.4.1-he2qdcb6bg6z2wj5y3qmk2opp6t2ohve
==> Installing zlib-ng-2.2.1-aiapvpptueslsb2iq3beakkxfdou5zq7 [4/4]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-10.5.0-zlib-ng-2.2.1-aiapvpptueslsb2iq3beakkxfdou5zq7.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-10.5.0/zlib-ng-2.2.1/linux-ubuntu22.04-x86_64_v3-gcc-10.5.0-zlib-ng-2.2.1-aiapvpptueslsb2iq3beakkxfdou5zq7.spack
==> Extracting zlib-ng-2.2.1-aiapvpptueslsb2iq3beakkxfdou5zq7 from binary cache
==> zlib-ng: Successfully installed zlib-ng-2.2.1-aiapvpptueslsb2iq3beakkxfdou5zq7
  Search: 0.00s.  Fetch: 0.01s.	 Install: 0.03s.  Extract: 0.01s.  Relocate: 0.01s.  Total: 0.03s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-10.5.0/zlib-ng-2.2.1-aiapvpptueslsb2iq3beakkxfdou5zq7

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-ng@2.0.7 cflags=-O3
[+] /usr (external glibc-2.35-a7drdl4tlx4bu3mzhor75pskvd3pdot6)
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gcc-runtime-11.4.0-hshzy762rns57ibvxiyi3qqvc4nehse2
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gmake-4.4.1-srkzfjru5z55bl5gy24dbjsrvqwg5fom
==> Installing zlib-ng-2.0.7-umrbkwvnydtpljzy4isoednibe4mwcvz [4/4]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-zlib-ng-2.0.7-umrbkwvnydtpljzy4isoednibe4mwcvz.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/zlib-ng-2.0.7/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-zlib-ng-2.0.7-umrbkwvnydtpljzy4isoednibe4mwcvz.spack
==> Extracting zlib-ng-2.0.7-umrbkwvnydtpljzy4isoednibe4mwcvz from binary cache
==> zlib-ng: Successfully installed zlib-ng-2.0.7-umrbkwvnydtpljzy4isoednibe4mwcvz
  Search: 0.00s.  Fetch: 0.15s.	 Install: 0.06s.  Extract: 0.04s.  Relocate: 0.01s.  Total: 0.21s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/zlib-ng-2.0.7-umrbkwvnydtpljzy4isoednibe4mwcvz

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-ubuntu22.04-x86_64_v3 / clang@14.0.0 -------------------
glibc@2.35  gmake@4.4.1	 zlib-ng@2.2.1

-- linux-ubuntu22.04-x86_64_v3 / gcc@10.5.0 ---------------------
gcc-runtime@10.5.0  glibc@2.35	gmake@4.4.1  zlib-ng@2.2.1

-- linux-ubuntu22.04-x86_64_v3 / gcc@11.4.0 ---------------------
gcc-runtime@11.4.0  glibc@2.35	gmake@4.4.1  zlib-ng@2.0.7  zlib-ng@2.0.7
==> 12 installed packages
$ spack find -lf
-- linux-ubuntu22.04-x86_64_v3 / clang@14.0.0 -------------------
xvsfmyv glibc@2.35%clang  gcbcod5 gmake@4.4.1%clang  jjykcjt zlib-ng@2.2.1%clang

-- linux-ubuntu22.04-x86_64_v3 / gcc@10.5.0 ---------------------
g7dc4ou gcc-runtime@10.5.0%gcc	tcngwuv glibc@2.35%gcc	he2qdcb gmake@4.4.1%gcc	 aiapvpp zlib-ng@2.2.1%gcc

-- linux-ubuntu22.04-x86_64_v3 / gcc@11.4.0 ---------------------
hshzy76 gcc-runtime@11.4.0%gcc	a7drdl4 glibc@2.35%gcc	srkzfjr gmake@4.4.1%gcc	 ocxrmff zlib-ng@2.0.7%gcc  umrbkwv zlib-ng@2.0.7%gcc  cflags=-O3
==> 12 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
[+] /usr (external glibc-2.35-a7drdl4tlx4bu3mzhor75pskvd3pdot6)
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gcc-runtime-11.4.0-hshzy762rns57ibvxiyi3qqvc4nehse2
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gmake-4.4.1-srkzfjru5z55bl5gy24dbjsrvqwg5fom
==> Installing zlib-ng-2.2.1-fhud6vqkh7jaesckalgqg5xxml72in6i [4/5]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-zlib-ng-2.2.1-fhud6vqkh7jaesckalgqg5xxml72in6i.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/zlib-ng-2.2.1/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-zlib-ng-2.2.1-fhud6vqkh7jaesckalgqg5xxml72in6i.spack
==> Extracting zlib-ng-2.2.1-fhud6vqkh7jaesckalgqg5xxml72in6i from binary cache
==> zlib-ng: Successfully installed zlib-ng-2.2.1-fhud6vqkh7jaesckalgqg5xxml72in6i
  Search: 0.00s.  Fetch: 0.15s.	 Install: 0.06s.  Extract: 0.04s.  Relocate: 0.01s.  Total: 0.21s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/zlib-ng-2.2.1-fhud6vqkh7jaesckalgqg5xxml72in6i
==> Installing tcl-8.6.12-w4gwr4ezmenbvt7u5zdyjdkfzapsz5lt [5/5]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-tcl-8.6.12-w4gwr4ezmenbvt7u5zdyjdkfzapsz5lt.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/tcl-8.6.12/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-tcl-8.6.12-w4gwr4ezmenbvt7u5zdyjdkfzapsz5lt.spack
==> Extracting tcl-8.6.12-w4gwr4ezmenbvt7u5zdyjdkfzapsz5lt from binary cache
==> tcl: Successfully installed tcl-8.6.12-w4gwr4ezmenbvt7u5zdyjdkfzapsz5lt
  Search: 0.00s.  Fetch: 0.01s.	 Install: 1.18s.  Extract: 1.10s.  Relocate: 0.08s.  Total: 1.20s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/tcl-8.6.12-w4gwr4ezmenbvt7u5zdyjdkfzapsz5lt

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-ng@2.0.7 %clang
[+] /usr (external glibc-2.35-xvsfmyvk5j33hkz4jhb7vwwsxz4ynras)
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/clang-14.0.0/gmake-4.4.1-gcbcod5uiky74ebvkj2y3kapw6cved7p
==> Installing zlib-ng-2.0.7-ju7mdbpjqss4lxbndpjjl4qv67vqt77m [3/4]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-clang-14.0.0-zlib-ng-2.0.7-ju7mdbpjqss4lxbndpjjl4qv67vqt77m.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/clang-14.0.0/zlib-ng-2.0.7/linux-ubuntu22.04-x86_64_v3-clang-14.0.0-zlib-ng-2.0.7-ju7mdbpjqss4lxbndpjjl4qv67vqt77m.spack
==> Extracting zlib-ng-2.0.7-ju7mdbpjqss4lxbndpjjl4qv67vqt77m from binary cache
==> zlib-ng: Successfully installed zlib-ng-2.0.7-ju7mdbpjqss4lxbndpjjl4qv67vqt77m
  Search: 0.00s.  Fetch: 0.15s.	 Install: 0.06s.  Extract: 0.04s.  Relocate: 0.01s.  Total: 0.21s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/clang-14.0.0/zlib-ng-2.0.7-ju7mdbpjqss4lxbndpjjl4qv67vqt77m
==> Installing tcl-8.6.12-lvfqvn3qzfvd3q2wzugrz3gbjnzk4uz2 [4/4]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-clang-14.0.0-tcl-8.6.12-lvfqvn3qzfvd3q2wzugrz3gbjnzk4uz2.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/clang-14.0.0/tcl-8.6.12/linux-ubuntu22.04-x86_64_v3-clang-14.0.0-tcl-8.6.12-lvfqvn3qzfvd3q2wzugrz3gbjnzk4uz2.spack
==> Extracting tcl-8.6.12-lvfqvn3qzfvd3q2wzugrz3gbjnzk4uz2 from binary cache
==> tcl: Successfully installed tcl-8.6.12-lvfqvn3qzfvd3q2wzugrz3gbjnzk4uz2
  Search: 0.00s.  Fetch: 0.01s.	 Install: 1.18s.  Extract: 1.11s.  Relocate: 0.07s.  Total: 1.20s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/clang-14.0.0/tcl-8.6.12-lvfqvn3qzfvd3q2wzugrz3gbjnzk4uz2

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-ng (cflags="-O3") began with umrbkwv. 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 ^/umr
[+] /usr (external glibc-2.35-a7drdl4tlx4bu3mzhor75pskvd3pdot6)
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gcc-runtime-11.4.0-hshzy762rns57ibvxiyi3qqvc4nehse2
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/zlib-ng-2.0.7-umrbkwvnydtpljzy4isoednibe4mwcvz
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gmake-4.4.1-srkzfjru5z55bl5gy24dbjsrvqwg5fom
==> Installing tcl-8.6.12-imrm45j44xmboxdqpj7akq2lwkwza4vo [5/5]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-tcl-8.6.12-imrm45j44xmboxdqpj7akq2lwkwza4vo.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/tcl-8.6.12/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-tcl-8.6.12-imrm45j44xmboxdqpj7akq2lwkwza4vo.spack
==> Extracting tcl-8.6.12-imrm45j44xmboxdqpj7akq2lwkwza4vo from binary cache
==> tcl: Successfully installed tcl-8.6.12-imrm45j44xmboxdqpj7akq2lwkwza4vo
  Search: 0.00s.  Fetch: 0.15s.	 Install: 1.22s.  Extract: 1.13s.  Relocate: 0.08s.  Total: 1.38s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/tcl-8.6.12-imrm45j44xmboxdqpj7akq2lwkwza4vo

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-ubuntu22.04-x86_64_v3 / clang@14.0.0 -------------------
xvsfmyv glibc@2.35%clang

gcbcod5 gmake@4.4.1%clang
xvsfmyv	    glibc@2.35%clang

lvfqvn3 tcl@8.6.12%clang
xvsfmyv	    glibc@2.35%clang
gcbcod5	    gmake@4.4.1%clang
ju7mdbp	    zlib-ng@2.0.7%clang

ju7mdbp zlib-ng@2.0.7%clang
xvsfmyv	    glibc@2.35%clang
gcbcod5	    gmake@4.4.1%clang

jjykcjt zlib-ng@2.2.1%clang
xvsfmyv	    glibc@2.35%clang
gcbcod5	    gmake@4.4.1%clang


-- linux-ubuntu22.04-x86_64_v3 / gcc@10.5.0 ---------------------
g7dc4ou gcc-runtime@10.5.0%gcc
tcngwuv	    glibc@2.35%gcc

tcngwuv glibc@2.35%gcc

he2qdcb gmake@4.4.1%gcc
g7dc4ou	    gcc-runtime@10.5.0%gcc
tcngwuv	    glibc@2.35%gcc

aiapvpp zlib-ng@2.2.1%gcc
g7dc4ou	    gcc-runtime@10.5.0%gcc
tcngwuv	    glibc@2.35%gcc
he2qdcb	    gmake@4.4.1%gcc


-- linux-ubuntu22.04-x86_64_v3 / gcc@11.4.0 ---------------------
hshzy76 gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc

a7drdl4 glibc@2.35%gcc

srkzfjr gmake@4.4.1%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc

imrm45j tcl@8.6.12%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc
umrbkwv	    zlib-ng@2.0.7%gcc  cflags=-O3

w4gwr4e tcl@8.6.12%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc
fhud6vq	    zlib-ng@2.2.1%gcc

ocxrmff zlib-ng@2.0.7%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc

umrbkwv zlib-ng@2.0.7%gcc  cflags=-O3
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc

fhud6vq zlib-ng@2.2.1%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc

==> 17 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
[+] /usr (external glibc-2.35-a7drdl4tlx4bu3mzhor75pskvd3pdot6)
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gcc-runtime-11.4.0-hshzy762rns57ibvxiyi3qqvc4nehse2
==> Installing ca-certificates-mozilla-2023-05-30-t2brqssuwbaeid47trzbdpe7d3gxw7q5 [3/43]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-ca-certificates-mozilla-2023-05-30-t2brqssuwbaeid47trzbdpe7d3gxw7q5.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/ca-certificates-mozilla-2023-05-30/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-ca-certificates-mozilla-2023-05-30-t2brqssuwbaeid47trzbdpe7d3gxw7q5.spack
==> Extracting ca-certificates-mozilla-2023-05-30-t2brqssuwbaeid47trzbdpe7d3gxw7q5 from binary cache
==> ca-certificates-mozilla: Successfully installed ca-certificates-mozilla-2023-05-30-t2brqssuwbaeid47trzbdpe7d3gxw7q5
  Search: 0.00s.  Fetch: 0.15s.	 Install: 0.05s.  Extract: 0.04s.  Relocate: 0.01s.  Total: 0.20s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/ca-certificates-mozilla-2023-05-30-t2brqssuwbaeid47trzbdpe7d3gxw7q5
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gmake-4.4.1-srkzfjru5z55bl5gy24dbjsrvqwg5fom
==> Installing zstd-1.5.6-t7h6imj35ruac562vr7snzvli2h2tzup [5/43]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-zstd-1.5.6-t7h6imj35ruac562vr7snzvli2h2tzup.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/zstd-1.5.6/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-zstd-1.5.6-t7h6imj35ruac562vr7snzvli2h2tzup.spack
==> Extracting zstd-1.5.6-t7h6imj35ruac562vr7snzvli2h2tzup from binary cache
==> zstd: Successfully installed zstd-1.5.6-t7h6imj35ruac562vr7snzvli2h2tzup
  Search: 0.00s.  Fetch: 0.01s.	 Install: 0.07s.  Extract: 0.06s.  Relocate: 0.01s.  Total: 0.08s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/zstd-1.5.6-t7h6imj35ruac562vr7snzvli2h2tzup
==> Installing libsigsegv-2.14-ea6qziv7obmf5fq3mxy42rhxptoiwfb6 [6/43]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-libsigsegv-2.14-ea6qziv7obmf5fq3mxy42rhxptoiwfb6.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libsigsegv-2.14/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-libsigsegv-2.14-ea6qziv7obmf5fq3mxy42rhxptoiwfb6.spack
==> Extracting libsigsegv-2.14-ea6qziv7obmf5fq3mxy42rhxptoiwfb6 from binary cache
==> libsigsegv: Successfully installed libsigsegv-2.14-ea6qziv7obmf5fq3mxy42rhxptoiwfb6
  Search: 0.00s.  Fetch: 0.01s.	 Install: 0.03s.  Extract: 0.01s.  Relocate: 0.01s.  Total: 0.03s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libsigsegv-2.14-ea6qziv7obmf5fq3mxy42rhxptoiwfb6
==> Installing util-macros-1.20.1-vdnwjqe534xoqfnj7cfcxomeqv47mufq [7/43]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-util-macros-1.20.1-vdnwjqe534xoqfnj7cfcxomeqv47mufq.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/util-macros-1.20.1/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-util-macros-1.20.1-vdnwjqe534xoqfnj7cfcxomeqv47mufq.spack
==> Extracting util-macros-1.20.1-vdnwjqe534xoqfnj7cfcxomeqv47mufq from binary cache
==> util-macros: Successfully installed util-macros-1.20.1-vdnwjqe534xoqfnj7cfcxomeqv47mufq
  Search: 0.00s.  Fetch: 0.01s.	 Install: 0.02s.  Extract: 0.01s.  Relocate: 0.01s.  Total: 0.03s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/util-macros-1.20.1-vdnwjqe534xoqfnj7cfcxomeqv47mufq
==> Installing xz-5.4.6-2fvrfr67ahyx5vqg6hyd3dachcl3nl2k [8/43]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-xz-5.4.6-2fvrfr67ahyx5vqg6hyd3dachcl3nl2k.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/xz-5.4.6/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-xz-5.4.6-2fvrfr67ahyx5vqg6hyd3dachcl3nl2k.spack
==> Extracting xz-5.4.6-2fvrfr67ahyx5vqg6hyd3dachcl3nl2k from binary cache
==> xz: Successfully installed xz-5.4.6-2fvrfr67ahyx5vqg6hyd3dachcl3nl2k
  Search: 0.00s.  Fetch: 0.01s.	 Install: 0.13s.  Extract: 0.12s.  Relocate: 0.01s.  Total: 0.14s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/xz-5.4.6-2fvrfr67ahyx5vqg6hyd3dachcl3nl2k
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/zlib-ng-2.2.1-fhud6vqkh7jaesckalgqg5xxml72in6i
==> Installing libiconv-1.17-bsga3novxptycgb4bpv4mldtq3f5m7mj [10/43]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-libiconv-1.17-bsga3novxptycgb4bpv4mldtq3f5m7mj.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libiconv-1.17/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-libiconv-1.17-bsga3novxptycgb4bpv4mldtq3f5m7mj.spack
==> Extracting libiconv-1.17-bsga3novxptycgb4bpv4mldtq3f5m7mj from binary cache
==> libiconv: Successfully installed libiconv-1.17-bsga3novxptycgb4bpv4mldtq3f5m7mj
  Search: 0.00s.  Fetch: 0.01s.	 Install: 0.09s.  Extract: 0.07s.  Relocate: 0.01s.  Total: 0.10s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libiconv-1.17-bsga3novxptycgb4bpv4mldtq3f5m7mj
==> Installing berkeley-db-18.1.40-cexliohp6aqckxeq4bqy5wrmxzyrfzqc [11/43]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-berkeley-db-18.1.40-cexliohp6aqckxeq4bqy5wrmxzyrfzqc.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/berkeley-db-18.1.40/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-berkeley-db-18.1.40-cexliohp6aqckxeq4bqy5wrmxzyrfzqc.spack
==> Extracting berkeley-db-18.1.40-cexliohp6aqckxeq4bqy5wrmxzyrfzqc from binary cache
==> berkeley-db: Successfully installed berkeley-db-18.1.40-cexliohp6aqckxeq4bqy5wrmxzyrfzqc
  Search: 0.00s.  Fetch: 0.01s.	 Install: 0.15s.  Extract: 0.13s.  Relocate: 0.02s.  Total: 0.16s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/berkeley-db-18.1.40-cexliohp6aqckxeq4bqy5wrmxzyrfzqc
==> Installing pkgconf-2.2.0-oplsmxryrcg6ackisqtpszdarzch6a6t [12/43]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-pkgconf-2.2.0-oplsmxryrcg6ackisqtpszdarzch6a6t.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/pkgconf-2.2.0/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-pkgconf-2.2.0-oplsmxryrcg6ackisqtpszdarzch6a6t.spack
==> Extracting pkgconf-2.2.0-oplsmxryrcg6ackisqtpszdarzch6a6t from binary cache
==> pkgconf: Successfully installed pkgconf-2.2.0-oplsmxryrcg6ackisqtpszdarzch6a6t
  Search: 0.00s.  Fetch: 0.01s.	 Install: 0.04s.  Extract: 0.02s.  Relocate: 0.01s.  Total: 0.04s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/pkgconf-2.2.0-oplsmxryrcg6ackisqtpszdarzch6a6t
==> Installing findutils-4.9.0-2sbkhchnzzj4a43ykj5jkwctwjc6b7lm [13/43]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-findutils-4.9.0-2sbkhchnzzj4a43ykj5jkwctwjc6b7lm.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/findutils-4.9.0/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-findutils-4.9.0-2sbkhchnzzj4a43ykj5jkwctwjc6b7lm.spack
==> Extracting findutils-4.9.0-2sbkhchnzzj4a43ykj5jkwctwjc6b7lm from binary cache
==> findutils: Successfully installed findutils-4.9.0-2sbkhchnzzj4a43ykj5jkwctwjc6b7lm
  Search: 0.00s.  Fetch: 0.01s.	 Install: 0.08s.  Extract: 0.07s.  Relocate: 0.01s.  Total: 0.09s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/findutils-4.9.0-2sbkhchnzzj4a43ykj5jkwctwjc6b7lm
==> Installing pigz-2.8-pcwnu2wfae7nfv5isb3kcl7otav2m5zy [14/43]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-pigz-2.8-pcwnu2wfae7nfv5isb3kcl7otav2m5zy.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/pigz-2.8/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-pigz-2.8-pcwnu2wfae7nfv5isb3kcl7otav2m5zy.spack
==> Extracting pigz-2.8-pcwnu2wfae7nfv5isb3kcl7otav2m5zy from binary cache
==> pigz: Successfully installed pigz-2.8-pcwnu2wfae7nfv5isb3kcl7otav2m5zy
  Search: 0.00s.  Fetch: 0.01s.	 Install: 0.03s.  Extract: 0.01s.  Relocate: 0.01s.  Total: 0.03s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/pigz-2.8-pcwnu2wfae7nfv5isb3kcl7otav2m5zy
==> Installing diffutils-3.10-lljulvxt5hdzi6al6xrljyx6i4qyanu4 [15/43]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-diffutils-3.10-lljulvxt5hdzi6al6xrljyx6i4qyanu4.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/diffutils-3.10/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-diffutils-3.10-lljulvxt5hdzi6al6xrljyx6i4qyanu4.spack
==> Extracting diffutils-3.10-lljulvxt5hdzi6al6xrljyx6i4qyanu4 from binary cache
==> diffutils: Successfully installed diffutils-3.10-lljulvxt5hdzi6al6xrljyx6i4qyanu4
  Search: 0.00s.  Fetch: 0.01s.	 Install: 0.08s.  Extract: 0.06s.  Relocate: 0.01s.  Total: 0.08s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/diffutils-3.10-lljulvxt5hdzi6al6xrljyx6i4qyanu4
==> Installing ncurses-6.5-rvg7j6bmergf3is4yoacm5sgsi7l4tvm [16/43]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-ncurses-6.5-rvg7j6bmergf3is4yoacm5sgsi7l4tvm.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/ncurses-6.5/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-ncurses-6.5-rvg7j6bmergf3is4yoacm5sgsi7l4tvm.spack
==> Extracting ncurses-6.5-rvg7j6bmergf3is4yoacm5sgsi7l4tvm from binary cache
==> ncurses: Successfully installed ncurses-6.5-rvg7j6bmergf3is4yoacm5sgsi7l4tvm
  Search: 0.00s.  Fetch: 0.01s.	 Install: 0.62s.  Extract: 0.60s.  Relocate: 0.02s.  Total: 0.63s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/ncurses-6.5-rvg7j6bmergf3is4yoacm5sgsi7l4tvm
==> Installing libxml2-2.13.4-wozcmyn2bivorr7geiwavaqeosmwmaow [17/43]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-libxml2-2.13.4-wozcmyn2bivorr7geiwavaqeosmwmaow.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libxml2-2.13.4/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-libxml2-2.13.4-wozcmyn2bivorr7geiwavaqeosmwmaow.spack
==> Extracting libxml2-2.13.4-wozcmyn2bivorr7geiwavaqeosmwmaow from binary cache
==> libxml2: Successfully installed libxml2-2.13.4-wozcmyn2bivorr7geiwavaqeosmwmaow
  Search: 0.00s.  Fetch: 0.01s.	 Install: 0.15s.  Extract: 0.12s.  Relocate: 0.02s.  Total: 0.16s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libxml2-2.13.4-wozcmyn2bivorr7geiwavaqeosmwmaow
==> Installing libpciaccess-0.17-omw5cc44g5qrphf7aqyjpdpmw2b3tr4i [18/43]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-libpciaccess-0.17-omw5cc44g5qrphf7aqyjpdpmw2b3tr4i.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libpciaccess-0.17/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-libpciaccess-0.17-omw5cc44g5qrphf7aqyjpdpmw2b3tr4i.spack
==> Extracting libpciaccess-0.17-omw5cc44g5qrphf7aqyjpdpmw2b3tr4i from binary cache
==> libpciaccess: Successfully installed libpciaccess-0.17-omw5cc44g5qrphf7aqyjpdpmw2b3tr4i
  Search: 0.00s.  Fetch: 0.01s.	 Install: 0.03s.  Extract: 0.01s.  Relocate: 0.01s.  Total: 0.04s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libpciaccess-0.17-omw5cc44g5qrphf7aqyjpdpmw2b3tr4i
==> Installing bzip2-1.0.8-ewqc7cx44b63asa742p2asywp2k6rfto [19/43]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-bzip2-1.0.8-ewqc7cx44b63asa742p2asywp2k6rfto.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/bzip2-1.0.8/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-bzip2-1.0.8-ewqc7cx44b63asa742p2asywp2k6rfto.spack
==> Extracting bzip2-1.0.8-ewqc7cx44b63asa742p2asywp2k6rfto from binary cache
==> bzip2: Successfully installed bzip2-1.0.8-ewqc7cx44b63asa742p2asywp2k6rfto
  Search: 0.00s.  Fetch: 0.01s.	 Install: 0.04s.  Extract: 0.02s.  Relocate: 0.01s.  Total: 0.04s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/bzip2-1.0.8-ewqc7cx44b63asa742p2asywp2k6rfto
==> Installing nghttp2-1.63.0-t2qkug7u7irxunnirgisvdu4mdoerrxt [20/43]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-nghttp2-1.63.0-t2qkug7u7irxunnirgisvdu4mdoerrxt.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/nghttp2-1.63.0/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-nghttp2-1.63.0-t2qkug7u7irxunnirgisvdu4mdoerrxt.spack
==> Extracting nghttp2-1.63.0-t2qkug7u7irxunnirgisvdu4mdoerrxt from binary cache
==> nghttp2: Successfully installed nghttp2-1.63.0-t2qkug7u7irxunnirgisvdu4mdoerrxt
  Search: 0.00s.  Fetch: 0.01s.	 Install: 0.06s.  Extract: 0.04s.  Relocate: 0.01s.  Total: 0.07s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/nghttp2-1.63.0-t2qkug7u7irxunnirgisvdu4mdoerrxt
==> Installing m4-1.4.19-qaspjyq5yqcso6yatgyhvm7j632ez7md [21/43]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-m4-1.4.19-qaspjyq5yqcso6yatgyhvm7j632ez7md.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/m4-1.4.19/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-m4-1.4.19-qaspjyq5yqcso6yatgyhvm7j632ez7md.spack
==> Extracting m4-1.4.19-qaspjyq5yqcso6yatgyhvm7j632ez7md from binary cache
==> m4: Successfully installed m4-1.4.19-qaspjyq5yqcso6yatgyhvm7j632ez7md
  Search: 0.00s.  Fetch: 0.01s.	 Install: 0.06s.  Extract: 0.04s.  Relocate: 0.01s.  Total: 0.07s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/m4-1.4.19-qaspjyq5yqcso6yatgyhvm7j632ez7md
==> Installing libedit-3.1-20240808-nhrbcomj5lgnql2itckj7py3hi6wuz5d [22/43]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-libedit-3.1-20240808-nhrbcomj5lgnql2itckj7py3hi6wuz5d.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libedit-3.1-20240808/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-libedit-3.1-20240808-nhrbcomj5lgnql2itckj7py3hi6wuz5d.spack
==> Extracting libedit-3.1-20240808-nhrbcomj5lgnql2itckj7py3hi6wuz5d from binary cache
==> libedit: Successfully installed libedit-3.1-20240808-nhrbcomj5lgnql2itckj7py3hi6wuz5d
  Search: 0.00s.  Fetch: 0.01s.	 Install: 0.06s.  Extract: 0.04s.  Relocate: 0.01s.  Total: 0.07s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libedit-3.1-20240808-nhrbcomj5lgnql2itckj7py3hi6wuz5d
==> Installing readline-8.2-aylebxvheua4djgtfzzqi2ialcjt5mw7 [23/43]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-readline-8.2-aylebxvheua4djgtfzzqi2ialcjt5mw7.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/readline-8.2/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-readline-8.2-aylebxvheua4djgtfzzqi2ialcjt5mw7.spack
==> Extracting readline-8.2-aylebxvheua4djgtfzzqi2ialcjt5mw7 from binary cache
==> readline: Successfully installed readline-8.2-aylebxvheua4djgtfzzqi2ialcjt5mw7
  Search: 0.00s.  Fetch: 0.01s.	 Install: 0.08s.  Extract: 0.06s.  Relocate: 0.01s.  Total: 0.09s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/readline-8.2-aylebxvheua4djgtfzzqi2ialcjt5mw7
==> Installing hwloc-2.11.1-fwtuzgpmp2dy3udiekh6nwnbcld22kmk [24/43]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-hwloc-2.11.1-fwtuzgpmp2dy3udiekh6nwnbcld22kmk.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/hwloc-2.11.1/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-hwloc-2.11.1-fwtuzgpmp2dy3udiekh6nwnbcld22kmk.spack
==> Extracting hwloc-2.11.1-fwtuzgpmp2dy3udiekh6nwnbcld22kmk from binary cache
==> hwloc: Successfully installed hwloc-2.11.1-fwtuzgpmp2dy3udiekh6nwnbcld22kmk
  Search: 0.00s.  Fetch: 0.01s.	 Install: 0.24s.  Extract: 0.20s.  Relocate: 0.03s.  Total: 0.25s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/hwloc-2.11.1-fwtuzgpmp2dy3udiekh6nwnbcld22kmk
==> Installing tar-1.34-mmv6i4naeg746pk2xpypdpejwvypmegb [25/43]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-tar-1.34-mmv6i4naeg746pk2xpypdpejwvypmegb.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/tar-1.34/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-tar-1.34-mmv6i4naeg746pk2xpypdpejwvypmegb.spack
==> Extracting tar-1.34-mmv6i4naeg746pk2xpypdpejwvypmegb from binary cache
==> tar: Successfully installed tar-1.34-mmv6i4naeg746pk2xpypdpejwvypmegb
  Search: 0.00s.  Fetch: 0.01s.	 Install: 0.13s.  Extract: 0.10s.  Relocate: 0.02s.  Total: 0.14s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/tar-1.34-mmv6i4naeg746pk2xpypdpejwvypmegb
==> Installing bison-3.8.2-sllhx5naxinbqkellh37xn6q3tgi5dh4 [26/43]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-bison-3.8.2-sllhx5naxinbqkellh37xn6q3tgi5dh4.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/bison-3.8.2/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-bison-3.8.2-sllhx5naxinbqkellh37xn6q3tgi5dh4.spack
==> Extracting bison-3.8.2-sllhx5naxinbqkellh37xn6q3tgi5dh4 from binary cache
==> bison: Successfully installed bison-3.8.2-sllhx5naxinbqkellh37xn6q3tgi5dh4
  Search: 0.00s.  Fetch: 0.01s.	 Install: 0.13s.  Extract: 0.11s.  Relocate: 0.01s.  Total: 0.14s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/bison-3.8.2-sllhx5naxinbqkellh37xn6q3tgi5dh4
==> Installing libtool-2.4.7-tt3byemiknxgeuaadpxrltepvic7xsms [27/43]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-libtool-2.4.7-tt3byemiknxgeuaadpxrltepvic7xsms.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libtool-2.4.7/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-libtool-2.4.7-tt3byemiknxgeuaadpxrltepvic7xsms.spack
==> Extracting libtool-2.4.7-tt3byemiknxgeuaadpxrltepvic7xsms from binary cache
==> libtool: Successfully installed libtool-2.4.7-tt3byemiknxgeuaadpxrltepvic7xsms
  Search: 0.00s.  Fetch: 0.01s.	 Install: 0.08s.  Extract: 0.05s.  Relocate: 0.02s.  Total: 0.09s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libtool-2.4.7-tt3byemiknxgeuaadpxrltepvic7xsms
==> Installing gdbm-1.23-jj2atvsdprz6qvh2n43326zfxv42iw7n [28/43]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-gdbm-1.23-jj2atvsdprz6qvh2n43326zfxv42iw7n.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gdbm-1.23/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-gdbm-1.23-jj2atvsdprz6qvh2n43326zfxv42iw7n.spack
==> Extracting gdbm-1.23-jj2atvsdprz6qvh2n43326zfxv42iw7n from binary cache
==> gdbm: Successfully installed gdbm-1.23-jj2atvsdprz6qvh2n43326zfxv42iw7n
  Search: 0.00s.  Fetch: 0.01s.	 Install: 0.07s.  Extract: 0.05s.  Relocate: 0.02s.  Total: 0.08s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gdbm-1.23-jj2atvsdprz6qvh2n43326zfxv42iw7n
==> Installing gettext-0.22.5-bexdfw2vfc64r6u72mqestm6olahfr6e [29/43]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-gettext-0.22.5-bexdfw2vfc64r6u72mqestm6olahfr6e.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gettext-0.22.5/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-gettext-0.22.5-bexdfw2vfc64r6u72mqestm6olahfr6e.spack
==> Extracting gettext-0.22.5-bexdfw2vfc64r6u72mqestm6olahfr6e from binary cache
==> gettext: Successfully installed gettext-0.22.5-bexdfw2vfc64r6u72mqestm6olahfr6e
  Search: 0.00s.  Fetch: 0.01s.	 Install: 0.72s.  Extract: 0.66s.  Relocate: 0.05s.  Total: 0.73s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gettext-0.22.5-bexdfw2vfc64r6u72mqestm6olahfr6e
==> Installing perl-5.40.0-cwpt5ec6gcal6ftcrrxcecnt74fdjfhi [30/43]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-perl-5.40.0-cwpt5ec6gcal6ftcrrxcecnt74fdjfhi.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/perl-5.40.0/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-perl-5.40.0-cwpt5ec6gcal6ftcrrxcecnt74fdjfhi.spack
==> Extracting perl-5.40.0-cwpt5ec6gcal6ftcrrxcecnt74fdjfhi from binary cache
==> perl: Successfully installed perl-5.40.0-cwpt5ec6gcal6ftcrrxcecnt74fdjfhi
  Search: 0.00s.  Fetch: 0.03s.	 Install: 1.00s.  Extract: 0.85s.  Relocate: 0.14s.  Total: 1.04s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/perl-5.40.0-cwpt5ec6gcal6ftcrrxcecnt74fdjfhi
==> Installing libxcrypt-4.4.35-v64tnmrjg7o5beyhae6x42vqlcxzdon6 [31/43]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-libxcrypt-4.4.35-v64tnmrjg7o5beyhae6x42vqlcxzdon6.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libxcrypt-4.4.35/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-libxcrypt-4.4.35-v64tnmrjg7o5beyhae6x42vqlcxzdon6.spack
==> Extracting libxcrypt-4.4.35-v64tnmrjg7o5beyhae6x42vqlcxzdon6 from binary cache
==> libxcrypt: Successfully installed libxcrypt-4.4.35-v64tnmrjg7o5beyhae6x42vqlcxzdon6
  Search: 0.00s.  Fetch: 0.01s.	 Install: 0.06s.  Extract: 0.04s.  Relocate: 0.01s.  Total: 0.06s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libxcrypt-4.4.35-v64tnmrjg7o5beyhae6x42vqlcxzdon6
==> Installing openssl-3.4.0-5gigqgwld4jgaxb46pzeavxuicamdgvw [32/43]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-openssl-3.4.0-5gigqgwld4jgaxb46pzeavxuicamdgvw.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/openssl-3.4.0/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-openssl-3.4.0-5gigqgwld4jgaxb46pzeavxuicamdgvw.spack
==> Extracting openssl-3.4.0-5gigqgwld4jgaxb46pzeavxuicamdgvw from binary cache
==> openssl: Successfully installed openssl-3.4.0-5gigqgwld4jgaxb46pzeavxuicamdgvw
  Search: 0.00s.  Fetch: 0.01s.	 Install: 0.32s.  Extract: 0.29s.  Relocate: 0.02s.  Total: 0.33s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/openssl-3.4.0-5gigqgwld4jgaxb46pzeavxuicamdgvw
==> Installing autoconf-2.72-vgucajy3lkmspohhktsvmzgzttgzwqnw [33/43]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-autoconf-2.72-vgucajy3lkmspohhktsvmzgzttgzwqnw.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/autoconf-2.72/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-autoconf-2.72-vgucajy3lkmspohhktsvmzgzttgzwqnw.spack
==> Extracting autoconf-2.72-vgucajy3lkmspohhktsvmzgzttgzwqnw from binary cache
==> autoconf: Successfully installed autoconf-2.72-vgucajy3lkmspohhktsvmzgzttgzwqnw
  Search: 0.00s.  Fetch: 0.01s.	 Install: 0.09s.  Extract: 0.06s.  Relocate: 0.02s.  Total: 0.10s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/autoconf-2.72-vgucajy3lkmspohhktsvmzgzttgzwqnw
==> Installing krb5-1.21.3-pq3as37xnogsfkivav3r6phgtsuwhjlb [34/43]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-krb5-1.21.3-pq3as37xnogsfkivav3r6phgtsuwhjlb.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/krb5-1.21.3/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-krb5-1.21.3-pq3as37xnogsfkivav3r6phgtsuwhjlb.spack
==> Extracting krb5-1.21.3-pq3as37xnogsfkivav3r6phgtsuwhjlb from binary cache
==> krb5: Successfully installed krb5-1.21.3-pq3as37xnogsfkivav3r6phgtsuwhjlb
  Search: 0.00s.  Fetch: 0.01s.	 Install: 0.17s.  Extract: 0.11s.  Relocate: 0.05s.  Total: 0.18s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/krb5-1.21.3-pq3as37xnogsfkivav3r6phgtsuwhjlb
==> Installing curl-8.10.1-fpywomo74ruadasuelzpvql7zj6rufeo [35/43]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-curl-8.10.1-fpywomo74ruadasuelzpvql7zj6rufeo.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/curl-8.10.1/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-curl-8.10.1-fpywomo74ruadasuelzpvql7zj6rufeo.spack
==> Extracting curl-8.10.1-fpywomo74ruadasuelzpvql7zj6rufeo from binary cache
==> curl: Successfully installed curl-8.10.1-fpywomo74ruadasuelzpvql7zj6rufeo
  Search: 0.00s.  Fetch: 0.01s.	 Install: 0.16s.  Extract: 0.13s.  Relocate: 0.02s.  Total: 0.17s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/curl-8.10.1-fpywomo74ruadasuelzpvql7zj6rufeo
==> Installing libevent-2.1.12-xbwxobi4cjizcuch7ukmi4igoosktbma [36/43]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-libevent-2.1.12-xbwxobi4cjizcuch7ukmi4igoosktbma.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libevent-2.1.12/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-libevent-2.1.12-xbwxobi4cjizcuch7ukmi4igoosktbma.spack
==> Extracting libevent-2.1.12-xbwxobi4cjizcuch7ukmi4igoosktbma from binary cache
==> libevent: Successfully installed libevent-2.1.12-xbwxobi4cjizcuch7ukmi4igoosktbma
  Search: 0.00s.  Fetch: 0.01s.	 Install: 0.14s.  Extract: 0.11s.  Relocate: 0.02s.  Total: 0.15s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libevent-2.1.12-xbwxobi4cjizcuch7ukmi4igoosktbma
==> Installing automake-1.16.5-awgfaon3dsdj54pighglmrv7gnex7jko [37/43]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-automake-1.16.5-awgfaon3dsdj54pighglmrv7gnex7jko.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/automake-1.16.5/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-automake-1.16.5-awgfaon3dsdj54pighglmrv7gnex7jko.spack
==> Extracting automake-1.16.5-awgfaon3dsdj54pighglmrv7gnex7jko from binary cache
==> automake: Successfully installed automake-1.16.5-awgfaon3dsdj54pighglmrv7gnex7jko
  Search: 0.00s.  Fetch: 0.01s.	 Install: 0.09s.  Extract: 0.05s.  Relocate: 0.03s.  Total: 0.10s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/automake-1.16.5-awgfaon3dsdj54pighglmrv7gnex7jko
==> Installing openssh-9.9p1-wz7w27t54u5lcphpvtwvv43vmhwmqwkn [38/43]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-openssh-9.9p1-wz7w27t54u5lcphpvtwvv43vmhwmqwkn.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/openssh-9.9p1/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-openssh-9.9p1-wz7w27t54u5lcphpvtwvv43vmhwmqwkn.spack
==> Extracting openssh-9.9p1-wz7w27t54u5lcphpvtwvv43vmhwmqwkn from binary cache
==> openssh: Successfully installed openssh-9.9p1-wz7w27t54u5lcphpvtwvv43vmhwmqwkn
  Search: 0.00s.  Fetch: 0.01s.	 Install: 0.18s.  Extract: 0.12s.  Relocate: 0.04s.  Total: 0.19s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/openssh-9.9p1-wz7w27t54u5lcphpvtwvv43vmhwmqwkn
==> Installing cmake-3.30.5-d2nwbxlz2qe2hqu7yy4v6vlgiz6qihwj [39/43]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-cmake-3.30.5-d2nwbxlz2qe2hqu7yy4v6vlgiz6qihwj.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/cmake-3.30.5/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-cmake-3.30.5-d2nwbxlz2qe2hqu7yy4v6vlgiz6qihwj.spack
==> Extracting cmake-3.30.5-d2nwbxlz2qe2hqu7yy4v6vlgiz6qihwj from binary cache
==> cmake: Successfully installed cmake-3.30.5-d2nwbxlz2qe2hqu7yy4v6vlgiz6qihwj
  Search: 0.00s.  Fetch: 0.02s.	 Install: 1.54s.  Extract: 1.43s.  Relocate: 0.10s.  Total: 1.57s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/cmake-3.30.5-d2nwbxlz2qe2hqu7yy4v6vlgiz6qihwj
==> Installing pmix-5.0.3-5wqqmswtibbhuilr356mzviq4flzdc3z [40/43]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-pmix-5.0.3-5wqqmswtibbhuilr356mzviq4flzdc3z.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/pmix-5.0.3/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-pmix-5.0.3-5wqqmswtibbhuilr356mzviq4flzdc3z.spack
==> Extracting pmix-5.0.3-5wqqmswtibbhuilr356mzviq4flzdc3z from binary cache
==> pmix: Successfully installed pmix-5.0.3-5wqqmswtibbhuilr356mzviq4flzdc3z
  Search: 0.00s.  Fetch: 0.01s.	 Install: 0.30s.  Extract: 0.24s.  Relocate: 0.04s.  Total: 0.31s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/pmix-5.0.3-5wqqmswtibbhuilr356mzviq4flzdc3z
==> Installing numactl-2.0.18-euqyy3hu6d7yiuf67q6xgmiwtlgfkanp [41/43]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-numactl-2.0.18-euqyy3hu6d7yiuf67q6xgmiwtlgfkanp.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/numactl-2.0.18/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-numactl-2.0.18-euqyy3hu6d7yiuf67q6xgmiwtlgfkanp.spack
==> Extracting numactl-2.0.18-euqyy3hu6d7yiuf67q6xgmiwtlgfkanp from binary cache
==> numactl: Successfully installed numactl-2.0.18-euqyy3hu6d7yiuf67q6xgmiwtlgfkanp
  Search: 0.00s.  Fetch: 0.01s.	 Install: 0.06s.  Extract: 0.03s.  Relocate: 0.01s.  Total: 0.06s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/numactl-2.0.18-euqyy3hu6d7yiuf67q6xgmiwtlgfkanp
==> Installing openmpi-5.0.5-jvwxvxe7dgexcutl2wtjaibbrnpys3ea [42/43]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-openmpi-5.0.5-jvwxvxe7dgexcutl2wtjaibbrnpys3ea.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/openmpi-5.0.5/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-openmpi-5.0.5-jvwxvxe7dgexcutl2wtjaibbrnpys3ea.spack
==> Extracting openmpi-5.0.5-jvwxvxe7dgexcutl2wtjaibbrnpys3ea from binary cache
==> openmpi: Successfully installed openmpi-5.0.5-jvwxvxe7dgexcutl2wtjaibbrnpys3ea
  Search: 0.00s.  Fetch: 0.02s.	 Install: 1.09s.  Extract: 1.02s.  Relocate: 0.05s.  Total: 1.10s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/openmpi-5.0.5-jvwxvxe7dgexcutl2wtjaibbrnpys3ea
==> Installing hdf5-1.14.5-6ddnwvambfcyhhhs7ehog6gkftrkljnt [43/43]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-hdf5-1.14.5-6ddnwvambfcyhhhs7ehog6gkftrkljnt.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/hdf5-1.14.5/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-hdf5-1.14.5-6ddnwvambfcyhhhs7ehog6gkftrkljnt.spack
==> Extracting hdf5-1.14.5-6ddnwvambfcyhhhs7ehog6gkftrkljnt from binary cache
==> hdf5: Successfully installed hdf5-1.14.5-6ddnwvambfcyhhhs7ehog6gkftrkljnt
  Search: 0.00s.  Fetch: 0.01s.	 Install: 0.32s.  Extract: 0.24s.  Relocate: 0.05s.  Total: 0.33s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/hdf5-1.14.5-6ddnwvambfcyhhhs7ehog6gkftrkljnt

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
[+] /usr (external glibc-2.35-a7drdl4tlx4bu3mzhor75pskvd3pdot6)
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gcc-runtime-11.4.0-hshzy762rns57ibvxiyi3qqvc4nehse2
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/pkgconf-2.2.0-oplsmxryrcg6ackisqtpszdarzch6a6t
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/zlib-ng-2.2.1-fhud6vqkh7jaesckalgqg5xxml72in6i
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gmake-4.4.1-srkzfjru5z55bl5gy24dbjsrvqwg5fom
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/ncurses-6.5-rvg7j6bmergf3is4yoacm5sgsi7l4tvm
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/nghttp2-1.63.0-t2qkug7u7irxunnirgisvdu4mdoerrxt
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/openssl-3.4.0-5gigqgwld4jgaxb46pzeavxuicamdgvw
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/curl-8.10.1-fpywomo74ruadasuelzpvql7zj6rufeo
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/cmake-3.30.5-d2nwbxlz2qe2hqu7yy4v6vlgiz6qihwj
==> Installing hdf5-1.14.5-ckoh67fpzb5gn7mti2xzruvlxd424par [11/11]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-hdf5-1.14.5-ckoh67fpzb5gn7mti2xzruvlxd424par.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/hdf5-1.14.5/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-hdf5-1.14.5-ckoh67fpzb5gn7mti2xzruvlxd424par.spack
==> Extracting hdf5-1.14.5-ckoh67fpzb5gn7mti2xzruvlxd424par from binary cache
==> hdf5: Successfully installed hdf5-1.14.5-ckoh67fpzb5gn7mti2xzruvlxd424par
  Search: 0.00s.  Fetch: 0.15s.	 Install: 0.29s.  Extract: 0.25s.  Relocate: 0.02s.  Total: 0.45s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/hdf5-1.14.5-ckoh67fpzb5gn7mti2xzruvlxd424par

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
[+] /usr (external glibc-2.35-a7drdl4tlx4bu3mzhor75pskvd3pdot6)
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gcc-runtime-11.4.0-hshzy762rns57ibvxiyi3qqvc4nehse2
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/ncurses-6.5-rvg7j6bmergf3is4yoacm5sgsi7l4tvm
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/zlib-ng-2.2.1-fhud6vqkh7jaesckalgqg5xxml72in6i
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/bzip2-1.0.8-ewqc7cx44b63asa742p2asywp2k6rfto
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/nghttp2-1.63.0-t2qkug7u7irxunnirgisvdu4mdoerrxt
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/findutils-4.9.0-2sbkhchnzzj4a43ykj5jkwctwjc6b7lm
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libiconv-1.17-bsga3novxptycgb4bpv4mldtq3f5m7mj
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libsigsegv-2.14-ea6qziv7obmf5fq3mxy42rhxptoiwfb6
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/xz-5.4.6-2fvrfr67ahyx5vqg6hyd3dachcl3nl2k
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libpciaccess-0.17-omw5cc44g5qrphf7aqyjpdpmw2b3tr4i
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gmake-4.4.1-srkzfjru5z55bl5gy24dbjsrvqwg5fom
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libxml2-2.13.4-wozcmyn2bivorr7geiwavaqeosmwmaow
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libtool-2.4.7-tt3byemiknxgeuaadpxrltepvic7xsms
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/m4-1.4.19-qaspjyq5yqcso6yatgyhvm7j632ez7md
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/openssl-3.4.0-5gigqgwld4jgaxb46pzeavxuicamdgvw
==> Installing libfabric-1.22.0-lr77ky6sw7xcwn6nz6i3zs4gwun5rshz [17/41]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-libfabric-1.22.0-lr77ky6sw7xcwn6nz6i3zs4gwun5rshz.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libfabric-1.22.0/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-libfabric-1.22.0-lr77ky6sw7xcwn6nz6i3zs4gwun5rshz.spack
==> Extracting libfabric-1.22.0-lr77ky6sw7xcwn6nz6i3zs4gwun5rshz from binary cache
==> libfabric: Successfully installed libfabric-1.22.0-lr77ky6sw7xcwn6nz6i3zs4gwun5rshz
  Search: 0.00s.  Fetch: 0.15s.	 Install: 0.12s.  Extract: 0.10s.  Relocate: 0.01s.  Total: 0.27s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libfabric-1.22.0-lr77ky6sw7xcwn6nz6i3zs4gwun5rshz
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/pigz-2.8-pcwnu2wfae7nfv5isb3kcl7otav2m5zy
==> Installing libmd-1.0.4-qcfzttdxovswz34pjuvrsjnuwsvrbhko [19/41]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-libmd-1.0.4-qcfzttdxovswz34pjuvrsjnuwsvrbhko.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libmd-1.0.4/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-libmd-1.0.4-qcfzttdxovswz34pjuvrsjnuwsvrbhko.spack
==> Extracting libmd-1.0.4-qcfzttdxovswz34pjuvrsjnuwsvrbhko from binary cache
==> libmd: Successfully installed libmd-1.0.4-qcfzttdxovswz34pjuvrsjnuwsvrbhko
  Search: 0.00s.  Fetch: 0.01s.	 Install: 0.04s.  Extract: 0.02s.  Relocate: 0.01s.  Total: 0.05s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libmd-1.0.4-qcfzttdxovswz34pjuvrsjnuwsvrbhko
==> Installing libffi-3.4.6-ltl5sqyu2fuckascuwdlxebbmp3k5spp [20/41]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-libffi-3.4.6-ltl5sqyu2fuckascuwdlxebbmp3k5spp.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libffi-3.4.6/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-libffi-3.4.6-ltl5sqyu2fuckascuwdlxebbmp3k5spp.spack
==> Extracting libffi-3.4.6-ltl5sqyu2fuckascuwdlxebbmp3k5spp from binary cache
==> libffi: Successfully installed libffi-3.4.6-ltl5sqyu2fuckascuwdlxebbmp3k5spp
  Search: 0.00s.  Fetch: 0.01s.	 Install: 0.03s.  Extract: 0.01s.  Relocate: 0.01s.  Total: 0.04s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libffi-3.4.6-ltl5sqyu2fuckascuwdlxebbmp3k5spp
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/readline-8.2-aylebxvheua4djgtfzzqi2ialcjt5mw7
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/berkeley-db-18.1.40-cexliohp6aqckxeq4bqy5wrmxzyrfzqc
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/pkgconf-2.2.0-oplsmxryrcg6ackisqtpszdarzch6a6t
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/zstd-1.5.6-t7h6imj35ruac562vr7snzvli2h2tzup
==> Installing libbsd-0.12.2-hwya6i63fvxczwxqtfz3ujel55as7dlp [25/41]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-libbsd-0.12.2-hwya6i63fvxczwxqtfz3ujel55as7dlp.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libbsd-0.12.2/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-libbsd-0.12.2-hwya6i63fvxczwxqtfz3ujel55as7dlp.spack
==> Extracting libbsd-0.12.2-hwya6i63fvxczwxqtfz3ujel55as7dlp from binary cache
==> libbsd: Successfully installed libbsd-0.12.2-hwya6i63fvxczwxqtfz3ujel55as7dlp
  Search: 0.00s.  Fetch: 0.01s.	 Install: 0.08s.  Extract: 0.05s.  Relocate: 0.01s.  Total: 0.09s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libbsd-0.12.2-hwya6i63fvxczwxqtfz3ujel55as7dlp
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gdbm-1.23-jj2atvsdprz6qvh2n43326zfxv42iw7n
==> Installing sqlite-3.46.0-ogdosm6dqmim5545dvloiyn5nvydhfra [27/41]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-sqlite-3.46.0-ogdosm6dqmim5545dvloiyn5nvydhfra.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/sqlite-3.46.0/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-sqlite-3.46.0-ogdosm6dqmim5545dvloiyn5nvydhfra.spack
==> Extracting sqlite-3.46.0-ogdosm6dqmim5545dvloiyn5nvydhfra from binary cache
==> sqlite: Successfully installed sqlite-3.46.0-ogdosm6dqmim5545dvloiyn5nvydhfra
  Search: 0.00s.  Fetch: 0.01s.	 Install: 0.41s.  Extract: 0.38s.  Relocate: 0.03s.  Total: 0.43s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/sqlite-3.46.0-ogdosm6dqmim5545dvloiyn5nvydhfra
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/curl-8.10.1-fpywomo74ruadasuelzpvql7zj6rufeo
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/hwloc-2.11.1-fwtuzgpmp2dy3udiekh6nwnbcld22kmk
==> Installing util-linux-uuid-2.40.2-xesify5chxevm2nzm4bad4s2jquildlm [30/41]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-util-linux-uuid-2.40.2-xesify5chxevm2nzm4bad4s2jquildlm.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/util-linux-uuid-2.40.2/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-util-linux-uuid-2.40.2-xesify5chxevm2nzm4bad4s2jquildlm.spack
==> Extracting util-linux-uuid-2.40.2-xesify5chxevm2nzm4bad4s2jquildlm from binary cache
==> util-linux-uuid: Successfully installed util-linux-uuid-2.40.2-xesify5chxevm2nzm4bad4s2jquildlm
  Search: 0.00s.  Fetch: 0.01s.	 Install: 0.17s.  Extract: 0.15s.  Relocate: 0.01s.  Total: 0.18s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/util-linux-uuid-2.40.2-xesify5chxevm2nzm4bad4s2jquildlm
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/tar-1.34-mmv6i4naeg746pk2xpypdpejwvypmegb
==> Installing expat-2.6.4-hj6jtyrxtqabnjznbntx6oeclctubpxq [32/41]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-expat-2.6.4-hj6jtyrxtqabnjznbntx6oeclctubpxq.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/expat-2.6.4/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-expat-2.6.4-hj6jtyrxtqabnjznbntx6oeclctubpxq.spack
==> Extracting expat-2.6.4-hj6jtyrxtqabnjznbntx6oeclctubpxq from binary cache
==> expat: Successfully installed expat-2.6.4-hj6jtyrxtqabnjznbntx6oeclctubpxq
  Search: 0.00s.  Fetch: 0.01s.	 Install: 0.06s.  Extract: 0.03s.  Relocate: 0.02s.  Total: 0.07s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/expat-2.6.4-hj6jtyrxtqabnjznbntx6oeclctubpxq
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/perl-5.40.0-cwpt5ec6gcal6ftcrrxcecnt74fdjfhi
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/cmake-3.30.5-d2nwbxlz2qe2hqu7yy4v6vlgiz6qihwj
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gettext-0.22.5-bexdfw2vfc64r6u72mqestm6olahfr6e
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/autoconf-2.72-vgucajy3lkmspohhktsvmzgzttgzwqnw
==> Installing python-3.13.0-gfyestlsaoooymkt6udvyevswwc3hrpl [37/41]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-python-3.13.0-gfyestlsaoooymkt6udvyevswwc3hrpl.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/python-3.13.0/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-python-3.13.0-gfyestlsaoooymkt6udvyevswwc3hrpl.spack
==> Extracting python-3.13.0-gfyestlsaoooymkt6udvyevswwc3hrpl from binary cache
==> python: Successfully installed python-3.13.0-gfyestlsaoooymkt6udvyevswwc3hrpl
  Search: 0.00s.  Fetch: 0.06s.	 Install: 4.30s.  Extract: 4.14s.  Relocate: 0.15s.  Total: 4.37s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/python-3.13.0-gfyestlsaoooymkt6udvyevswwc3hrpl
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/automake-1.16.5-awgfaon3dsdj54pighglmrv7gnex7jko
==> Installing yaksa-0.3-eogugqp4p6rmv7uuuyc222ae6327j2cn [39/41]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-yaksa-0.3-eogugqp4p6rmv7uuuyc222ae6327j2cn.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/yaksa-0.3/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-yaksa-0.3-eogugqp4p6rmv7uuuyc222ae6327j2cn.spack
==> Extracting yaksa-0.3-eogugqp4p6rmv7uuuyc222ae6327j2cn from binary cache
==> yaksa: Successfully installed yaksa-0.3-eogugqp4p6rmv7uuuyc222ae6327j2cn
  Search: 0.00s.  Fetch: 0.02s.	 Install: 0.79s.  Extract: 0.73s.  Relocate: 0.04s.  Total: 0.81s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/yaksa-0.3-eogugqp4p6rmv7uuuyc222ae6327j2cn
==> Installing mpich-4.2.3-cqazuix44irmawg3ifmyqvnaeb2t5vi5 [40/41]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-mpich-4.2.3-cqazuix44irmawg3ifmyqvnaeb2t5vi5.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/mpich-4.2.3/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-mpich-4.2.3-cqazuix44irmawg3ifmyqvnaeb2t5vi5.spack
==> Extracting mpich-4.2.3-cqazuix44irmawg3ifmyqvnaeb2t5vi5 from binary cache
==> mpich: Successfully installed mpich-4.2.3-cqazuix44irmawg3ifmyqvnaeb2t5vi5
  Search: 0.00s.  Fetch: 0.01s.	 Install: 1.05s.  Extract: 0.98s.  Relocate: 0.04s.  Total: 1.06s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/mpich-4.2.3-cqazuix44irmawg3ifmyqvnaeb2t5vi5
==> Installing hdf5-1.14.5-tgtmflo4s6hqenvkle7urqiz2w6rumph [41/41]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-hdf5-1.14.5-tgtmflo4s6hqenvkle7urqiz2w6rumph.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/hdf5-1.14.5/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-hdf5-1.14.5-tgtmflo4s6hqenvkle7urqiz2w6rumph.spack
==> Extracting hdf5-1.14.5-tgtmflo4s6hqenvkle7urqiz2w6rumph from binary cache
==> hdf5: Successfully installed hdf5-1.14.5-tgtmflo4s6hqenvkle7urqiz2w6rumph
  Search: 0.00s.  Fetch: 0.01s.	 Install: 0.32s.  Extract: 0.24s.  Relocate: 0.05s.  Total: 0.33s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/hdf5-1.14.5-tgtmflo4s6hqenvkle7urqiz2w6rumph

We’ll do a quick check in on what we have installed so far.

$ spack find -ldf
-- linux-ubuntu22.04-x86_64_v3 / clang@14.0.0 -------------------
xvsfmyv glibc@2.35%clang

gcbcod5 gmake@4.4.1%clang
xvsfmyv	    glibc@2.35%clang

lvfqvn3 tcl@8.6.12%clang
xvsfmyv	    glibc@2.35%clang
gcbcod5	    gmake@4.4.1%clang
ju7mdbp	    zlib-ng@2.0.7%clang

ju7mdbp zlib-ng@2.0.7%clang
xvsfmyv	    glibc@2.35%clang
gcbcod5	    gmake@4.4.1%clang

jjykcjt zlib-ng@2.2.1%clang
xvsfmyv	    glibc@2.35%clang
gcbcod5	    gmake@4.4.1%clang


-- linux-ubuntu22.04-x86_64_v3 / gcc@10.5.0 ---------------------
g7dc4ou gcc-runtime@10.5.0%gcc
tcngwuv	    glibc@2.35%gcc

tcngwuv glibc@2.35%gcc

he2qdcb gmake@4.4.1%gcc
g7dc4ou	    gcc-runtime@10.5.0%gcc
tcngwuv	    glibc@2.35%gcc

aiapvpp zlib-ng@2.2.1%gcc
g7dc4ou	    gcc-runtime@10.5.0%gcc
tcngwuv	    glibc@2.35%gcc
he2qdcb	    gmake@4.4.1%gcc


-- linux-ubuntu22.04-x86_64_v3 / gcc@11.4.0 ---------------------
vgucajy autoconf@2.72%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc
qaspjyq	    m4@1.4.19%gcc
lljulvx		diffutils@3.10%gcc
bsga3no		    libiconv@1.17%gcc
ea6qziv		libsigsegv@2.14%gcc
cwpt5ec	    perl@5.40.0%gcc
cexlioh		berkeley-db@18.1.40%gcc
ewqc7cx		bzip2@1.0.8%gcc
jj2atvs		gdbm@1.23%gcc
aylebxv		    readline@8.2%gcc
rvg7j6b			ncurses@6.5%gcc
oplsmxr			    pkgconf@2.2.0%gcc
fhud6vq		zlib-ng@2.2.1%gcc

awgfaon automake@1.16.5%gcc
vgucajy	    autoconf@2.72%gcc
qaspjyq		m4@1.4.19%gcc
lljulvx		    diffutils@3.10%gcc
bsga3no			libiconv@1.17%gcc
ea6qziv		    libsigsegv@2.14%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc
cwpt5ec	    perl@5.40.0%gcc
cexlioh		berkeley-db@18.1.40%gcc
ewqc7cx		bzip2@1.0.8%gcc
jj2atvs		gdbm@1.23%gcc
aylebxv		    readline@8.2%gcc
rvg7j6b			ncurses@6.5%gcc
oplsmxr			    pkgconf@2.2.0%gcc
fhud6vq		zlib-ng@2.2.1%gcc

cexlioh berkeley-db@18.1.40%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc

sllhx5n bison@3.8.2%gcc
lljulvx	    diffutils@3.10%gcc
bsga3no		libiconv@1.17%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc
qaspjyq	    m4@1.4.19%gcc
ea6qziv		libsigsegv@2.14%gcc

ewqc7cx bzip2@1.0.8%gcc
lljulvx	    diffutils@3.10%gcc
bsga3no		libiconv@1.17%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc

t2brqss ca-certificates-mozilla@2023-05-30%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc

d2nwbxl cmake@3.30.5%gcc
fpywomo	    curl@8.10.1%gcc
t2qkug7		nghttp2@1.63.0%gcc
lljulvx		    diffutils@3.10%gcc
bsga3no			libiconv@1.17%gcc
5gigqgw		openssl@3.4.0%gcc
t2brqss		    ca-certificates-mozilla@2023-05-30%gcc
cwpt5ec		    perl@5.40.0%gcc
cexlioh			berkeley-db@18.1.40%gcc
ewqc7cx			bzip2@1.0.8%gcc
jj2atvs			gdbm@1.23%gcc
aylebxv			    readline@8.2%gcc
oplsmxr		pkgconf@2.2.0%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc
rvg7j6b	    ncurses@6.5%gcc
fhud6vq	    zlib-ng@2.2.1%gcc

fpywomo curl@8.10.1%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc
t2qkug7	    nghttp2@1.63.0%gcc
lljulvx		diffutils@3.10%gcc
bsga3no		    libiconv@1.17%gcc
5gigqgw	    openssl@3.4.0%gcc
t2brqss		ca-certificates-mozilla@2023-05-30%gcc
cwpt5ec		perl@5.40.0%gcc
cexlioh		    berkeley-db@18.1.40%gcc
ewqc7cx		    bzip2@1.0.8%gcc
jj2atvs		    gdbm@1.23%gcc
aylebxv			readline@8.2%gcc
rvg7j6b			    ncurses@6.5%gcc
oplsmxr	    pkgconf@2.2.0%gcc
fhud6vq	    zlib-ng@2.2.1%gcc

lljulvx diffutils@3.10%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc
bsga3no	    libiconv@1.17%gcc

hj6jtyr expat@2.6.4%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc
hwya6i6	    libbsd@0.12.2%gcc
qcfzttd		libmd@1.0.4%gcc

2sbkhch findutils@4.9.0%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc

hshzy76 gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc

jj2atvs gdbm@1.23%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc
aylebxv	    readline@8.2%gcc
rvg7j6b		ncurses@6.5%gcc
oplsmxr		    pkgconf@2.2.0%gcc

bexdfw2 gettext@0.22.5%gcc
ewqc7cx	    bzip2@1.0.8%gcc
lljulvx		diffutils@3.10%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc
bsga3no	    libiconv@1.17%gcc
wozcmyn	    libxml2@2.13.4%gcc
oplsmxr		pkgconf@2.2.0%gcc
fhud6vq		zlib-ng@2.2.1%gcc
rvg7j6b	    ncurses@6.5%gcc
mmv6i4n	    tar@1.34%gcc
pcwnu2w		pigz@2.8%gcc
t7h6imj		zstd@1.5.6%gcc
2fvrfr6	    xz@5.4.6%gcc

a7drdl4 glibc@2.35%gcc

srkzfjr gmake@4.4.1%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc

ckoh67f hdf5@1.14.5%gcc
d2nwbxl	    cmake@3.30.5%gcc
fpywomo		curl@8.10.1%gcc
t2qkug7		    nghttp2@1.63.0%gcc
lljulvx			diffutils@3.10%gcc
bsga3no			    libiconv@1.17%gcc
5gigqgw		    openssl@3.4.0%gcc
t2brqss			ca-certificates-mozilla@2023-05-30%gcc
cwpt5ec			perl@5.40.0%gcc
cexlioh			    berkeley-db@18.1.40%gcc
ewqc7cx			    bzip2@1.0.8%gcc
jj2atvs			    gdbm@1.23%gcc
aylebxv				readline@8.2%gcc
rvg7j6b		ncurses@6.5%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc
oplsmxr	    pkgconf@2.2.0%gcc
fhud6vq	    zlib-ng@2.2.1%gcc

6ddnwva hdf5@1.14.5%gcc
d2nwbxl	    cmake@3.30.5%gcc
fpywomo		curl@8.10.1%gcc
t2qkug7		    nghttp2@1.63.0%gcc
lljulvx			diffutils@3.10%gcc
5gigqgw		    openssl@3.4.0%gcc
t2brqss			ca-certificates-mozilla@2023-05-30%gcc
rvg7j6b		ncurses@6.5%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc
jvwxvxe	    openmpi@5.0.5%gcc
vgucajy		autoconf@2.72%gcc
qaspjyq		    m4@1.4.19%gcc
ea6qziv			libsigsegv@2.14%gcc
awgfaon		automake@1.16.5%gcc
fwtuzgp		hwloc@2.11.1%gcc
omw5cc4		    libpciaccess@0.17%gcc
vdnwjqe			util-macros@1.20.1%gcc
wozcmyn		    libxml2@2.13.4%gcc
bsga3no			libiconv@1.17%gcc
2fvrfr6			xz@5.4.6%gcc
xbwxobi		libevent@2.1.12%gcc
tt3byem		libtool@2.4.7%gcc
2sbkhch		    findutils@4.9.0%gcc
euqyy3h		numactl@2.0.18%gcc
wz7w27t		openssh@9.9p1%gcc
pq3as37		    krb5@1.21.3%gcc
sllhx5n			bison@3.8.2%gcc
bexdfw2			gettext@0.22.5%gcc
mmv6i4n			    tar@1.34%gcc
pcwnu2w				pigz@2.8%gcc
t7h6imj				zstd@1.5.6%gcc
nhrbcom		    libedit@3.1-20240808%gcc
v64tnmr		    libxcrypt@4.4.35%gcc
cwpt5ec		perl@5.40.0%gcc
cexlioh		    berkeley-db@18.1.40%gcc
ewqc7cx		    bzip2@1.0.8%gcc
jj2atvs		    gdbm@1.23%gcc
aylebxv			readline@8.2%gcc
5wqqmsw		pmix@5.0.3%gcc
oplsmxr	    pkgconf@2.2.0%gcc
fhud6vq	    zlib-ng@2.2.1%gcc

tgtmflo hdf5@1.14.5%gcc
d2nwbxl	    cmake@3.30.5%gcc
fpywomo		curl@8.10.1%gcc
t2qkug7		    nghttp2@1.63.0%gcc
lljulvx			diffutils@3.10%gcc
5gigqgw		    openssl@3.4.0%gcc
t2brqss			ca-certificates-mozilla@2023-05-30%gcc
cwpt5ec			perl@5.40.0%gcc
cexlioh			    berkeley-db@18.1.40%gcc
rvg7j6b		ncurses@6.5%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc
cqazuix	    mpich@4.2.3%gcc
2sbkhch		findutils@4.9.0%gcc
fwtuzgp		hwloc@2.11.1%gcc
lr77ky6		libfabric@1.22.0%gcc
omw5cc4		libpciaccess@0.17%gcc
vdnwjqe		    util-macros@1.20.1%gcc
wozcmyn		libxml2@2.13.4%gcc
bsga3no		    libiconv@1.17%gcc
2fvrfr6		    xz@5.4.6%gcc
eogugqp		yaksa@0.3%gcc
vgucajy		    autoconf@2.72%gcc
awgfaon		    automake@1.16.5%gcc
tt3byem		    libtool@2.4.7%gcc
qaspjyq		    m4@1.4.19%gcc
ea6qziv			libsigsegv@2.14%gcc
gfyestl		    python@3.13.0%gcc
ewqc7cx			bzip2@1.0.8%gcc
hj6jtyr			expat@2.6.4%gcc
hwya6i6			    libbsd@0.12.2%gcc
qcfzttd				libmd@1.0.4%gcc
jj2atvs			gdbm@1.23%gcc
bexdfw2			gettext@0.22.5%gcc
mmv6i4n			    tar@1.34%gcc
pcwnu2w				pigz@2.8%gcc
t7h6imj				zstd@1.5.6%gcc
ltl5sqy			libffi@3.4.6%gcc
aylebxv			readline@8.2%gcc
ogdosm6			sqlite@3.46.0%gcc
xesify5			util-linux-uuid@2.40.2%gcc
oplsmxr	    pkgconf@2.2.0%gcc
fhud6vq	    zlib-ng@2.2.1%gcc

fwtuzgp hwloc@2.11.1%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc
omw5cc4	    libpciaccess@0.17%gcc
vdnwjqe		util-macros@1.20.1%gcc
wozcmyn	    libxml2@2.13.4%gcc
bsga3no		libiconv@1.17%gcc
2fvrfr6		xz@5.4.6%gcc
fhud6vq		zlib-ng@2.2.1%gcc
rvg7j6b	    ncurses@6.5%gcc
oplsmxr	    pkgconf@2.2.0%gcc

pq3as37 krb5@1.21.3%gcc
sllhx5n	    bison@3.8.2%gcc
qaspjyq		m4@1.4.19%gcc
ea6qziv		    libsigsegv@2.14%gcc
lljulvx	    diffutils@3.10%gcc
bsga3no		libiconv@1.17%gcc
2sbkhch	    findutils@4.9.0%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
bexdfw2	    gettext@0.22.5%gcc
ewqc7cx		bzip2@1.0.8%gcc
wozcmyn		libxml2@2.13.4%gcc
rvg7j6b		ncurses@6.5%gcc
mmv6i4n		tar@1.34%gcc
pcwnu2w		    pigz@2.8%gcc
t7h6imj		    zstd@1.5.6%gcc
2fvrfr6		xz@5.4.6%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc
5gigqgw	    openssl@3.4.0%gcc
t2brqss		ca-certificates-mozilla@2023-05-30%gcc
fhud6vq		zlib-ng@2.2.1%gcc
cwpt5ec	    perl@5.40.0%gcc
cexlioh		berkeley-db@18.1.40%gcc
jj2atvs		gdbm@1.23%gcc
aylebxv		    readline@8.2%gcc
oplsmxr	    pkgconf@2.2.0%gcc

hwya6i6 libbsd@0.12.2%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc
qcfzttd	    libmd@1.0.4%gcc

nhrbcom libedit@3.1-20240808%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc
rvg7j6b	    ncurses@6.5%gcc
oplsmxr	    pkgconf@2.2.0%gcc

xbwxobi libevent@2.1.12%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc
5gigqgw	    openssl@3.4.0%gcc
t2brqss		ca-certificates-mozilla@2023-05-30%gcc
cwpt5ec		perl@5.40.0%gcc
cexlioh		    berkeley-db@18.1.40%gcc
ewqc7cx		    bzip2@1.0.8%gcc
lljulvx			diffutils@3.10%gcc
bsga3no			    libiconv@1.17%gcc
jj2atvs		    gdbm@1.23%gcc
aylebxv			readline@8.2%gcc
rvg7j6b			    ncurses@6.5%gcc
oplsmxr				pkgconf@2.2.0%gcc
fhud6vq		zlib-ng@2.2.1%gcc

lr77ky6 libfabric@1.22.0%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc

ltl5sqy libffi@3.4.6%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc

bsga3no libiconv@1.17%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc

qcfzttd libmd@1.0.4%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc

omw5cc4 libpciaccess@0.17%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc
oplsmxr	    pkgconf@2.2.0%gcc
vdnwjqe	    util-macros@1.20.1%gcc

ea6qziv libsigsegv@2.14%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc

tt3byem libtool@2.4.7%gcc
2sbkhch	    findutils@4.9.0%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc
qaspjyq	    m4@1.4.19%gcc
lljulvx		diffutils@3.10%gcc
bsga3no		    libiconv@1.17%gcc
ea6qziv		libsigsegv@2.14%gcc

v64tnmr libxcrypt@4.4.35%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc
cwpt5ec	    perl@5.40.0%gcc
cexlioh		berkeley-db@18.1.40%gcc
ewqc7cx		bzip2@1.0.8%gcc
lljulvx		    diffutils@3.10%gcc
bsga3no			libiconv@1.17%gcc
jj2atvs		gdbm@1.23%gcc
aylebxv		    readline@8.2%gcc
rvg7j6b			ncurses@6.5%gcc
oplsmxr			    pkgconf@2.2.0%gcc
fhud6vq		zlib-ng@2.2.1%gcc

wozcmyn libxml2@2.13.4%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc
bsga3no	    libiconv@1.17%gcc
oplsmxr	    pkgconf@2.2.0%gcc
2fvrfr6	    xz@5.4.6%gcc
fhud6vq	    zlib-ng@2.2.1%gcc

qaspjyq m4@1.4.19%gcc
lljulvx	    diffutils@3.10%gcc
bsga3no		libiconv@1.17%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc
ea6qziv	    libsigsegv@2.14%gcc

cqazuix mpich@4.2.3%gcc
2sbkhch	    findutils@4.9.0%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc
fwtuzgp	    hwloc@2.11.1%gcc
rvg7j6b		ncurses@6.5%gcc
lr77ky6	    libfabric@1.22.0%gcc
omw5cc4	    libpciaccess@0.17%gcc
vdnwjqe		util-macros@1.20.1%gcc
wozcmyn	    libxml2@2.13.4%gcc
bsga3no		libiconv@1.17%gcc
2fvrfr6		xz@5.4.6%gcc
fhud6vq		zlib-ng@2.2.1%gcc
oplsmxr	    pkgconf@2.2.0%gcc
eogugqp	    yaksa@0.3%gcc
vgucajy		autoconf@2.72%gcc
cwpt5ec		    perl@5.40.0%gcc
cexlioh			berkeley-db@18.1.40%gcc
awgfaon		automake@1.16.5%gcc
tt3byem		libtool@2.4.7%gcc
qaspjyq		m4@1.4.19%gcc
lljulvx		    diffutils@3.10%gcc
ea6qziv		    libsigsegv@2.14%gcc
gfyestl		python@3.13.0%gcc
ewqc7cx		    bzip2@1.0.8%gcc
hj6jtyr		    expat@2.6.4%gcc
hwya6i6			libbsd@0.12.2%gcc
qcfzttd			    libmd@1.0.4%gcc
jj2atvs		    gdbm@1.23%gcc
bexdfw2		    gettext@0.22.5%gcc
mmv6i4n			tar@1.34%gcc
pcwnu2w			    pigz@2.8%gcc
t7h6imj			    zstd@1.5.6%gcc
ltl5sqy		    libffi@3.4.6%gcc
5gigqgw		    openssl@3.4.0%gcc
t2brqss			ca-certificates-mozilla@2023-05-30%gcc
aylebxv		    readline@8.2%gcc
ogdosm6		    sqlite@3.46.0%gcc
xesify5		    util-linux-uuid@2.40.2%gcc

rvg7j6b ncurses@6.5%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc
oplsmxr	    pkgconf@2.2.0%gcc

t2qkug7 nghttp2@1.63.0%gcc
lljulvx	    diffutils@3.10%gcc
bsga3no		libiconv@1.17%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc
oplsmxr	    pkgconf@2.2.0%gcc

euqyy3h numactl@2.0.18%gcc
vgucajy	    autoconf@2.72%gcc
cwpt5ec		perl@5.40.0%gcc
cexlioh		    berkeley-db@18.1.40%gcc
ewqc7cx		    bzip2@1.0.8%gcc
jj2atvs		    gdbm@1.23%gcc
aylebxv			readline@8.2%gcc
rvg7j6b			    ncurses@6.5%gcc
oplsmxr				pkgconf@2.2.0%gcc
fhud6vq		    zlib-ng@2.2.1%gcc
awgfaon	    automake@1.16.5%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc
tt3byem	    libtool@2.4.7%gcc
2sbkhch		findutils@4.9.0%gcc
qaspjyq	    m4@1.4.19%gcc
lljulvx		diffutils@3.10%gcc
bsga3no		    libiconv@1.17%gcc
ea6qziv		libsigsegv@2.14%gcc

jvwxvxe openmpi@5.0.5%gcc
vgucajy	    autoconf@2.72%gcc
qaspjyq		m4@1.4.19%gcc
lljulvx		    diffutils@3.10%gcc
ea6qziv		    libsigsegv@2.14%gcc
awgfaon	    automake@1.16.5%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc
fwtuzgp	    hwloc@2.11.1%gcc
omw5cc4		libpciaccess@0.17%gcc
vdnwjqe		    util-macros@1.20.1%gcc
wozcmyn		libxml2@2.13.4%gcc
bsga3no		    libiconv@1.17%gcc
2fvrfr6		    xz@5.4.6%gcc
rvg7j6b		ncurses@6.5%gcc
xbwxobi	    libevent@2.1.12%gcc
5gigqgw		openssl@3.4.0%gcc
t2brqss		    ca-certificates-mozilla@2023-05-30%gcc
tt3byem	    libtool@2.4.7%gcc
2sbkhch		findutils@4.9.0%gcc
euqyy3h	    numactl@2.0.18%gcc
wz7w27t	    openssh@9.9p1%gcc
pq3as37		krb5@1.21.3%gcc
sllhx5n		    bison@3.8.2%gcc
bexdfw2		    gettext@0.22.5%gcc
mmv6i4n			tar@1.34%gcc
pcwnu2w			    pigz@2.8%gcc
t7h6imj			    zstd@1.5.6%gcc
nhrbcom		libedit@3.1-20240808%gcc
v64tnmr		libxcrypt@4.4.35%gcc
cwpt5ec	    perl@5.40.0%gcc
cexlioh		berkeley-db@18.1.40%gcc
ewqc7cx		bzip2@1.0.8%gcc
jj2atvs		gdbm@1.23%gcc
aylebxv		    readline@8.2%gcc
oplsmxr	    pkgconf@2.2.0%gcc
5wqqmsw	    pmix@5.0.3%gcc
fhud6vq	    zlib-ng@2.2.1%gcc

wz7w27t openssh@9.9p1%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc
pq3as37	    krb5@1.21.3%gcc
sllhx5n		bison@3.8.2%gcc
qaspjyq		    m4@1.4.19%gcc
ea6qziv			libsigsegv@2.14%gcc
lljulvx		diffutils@3.10%gcc
bsga3no		    libiconv@1.17%gcc
2sbkhch		findutils@4.9.0%gcc
bexdfw2		gettext@0.22.5%gcc
ewqc7cx		    bzip2@1.0.8%gcc
wozcmyn		    libxml2@2.13.4%gcc
mmv6i4n		    tar@1.34%gcc
pcwnu2w			pigz@2.8%gcc
t7h6imj			zstd@1.5.6%gcc
2fvrfr6		    xz@5.4.6%gcc
cwpt5ec		perl@5.40.0%gcc
cexlioh		    berkeley-db@18.1.40%gcc
jj2atvs		    gdbm@1.23%gcc
aylebxv			readline@8.2%gcc
oplsmxr		pkgconf@2.2.0%gcc
nhrbcom	    libedit@3.1-20240808%gcc
v64tnmr	    libxcrypt@4.4.35%gcc
rvg7j6b	    ncurses@6.5%gcc
5gigqgw	    openssl@3.4.0%gcc
t2brqss		ca-certificates-mozilla@2023-05-30%gcc
fhud6vq	    zlib-ng@2.2.1%gcc

5gigqgw openssl@3.4.0%gcc
t2brqss	    ca-certificates-mozilla@2023-05-30%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc
cwpt5ec	    perl@5.40.0%gcc
cexlioh		berkeley-db@18.1.40%gcc
ewqc7cx		bzip2@1.0.8%gcc
lljulvx		    diffutils@3.10%gcc
bsga3no			libiconv@1.17%gcc
jj2atvs		gdbm@1.23%gcc
aylebxv		    readline@8.2%gcc
rvg7j6b			ncurses@6.5%gcc
oplsmxr			    pkgconf@2.2.0%gcc
fhud6vq	    zlib-ng@2.2.1%gcc

cwpt5ec perl@5.40.0%gcc
cexlioh	    berkeley-db@18.1.40%gcc
ewqc7cx	    bzip2@1.0.8%gcc
lljulvx		diffutils@3.10%gcc
bsga3no		    libiconv@1.17%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
jj2atvs	    gdbm@1.23%gcc
aylebxv		readline@8.2%gcc
rvg7j6b		    ncurses@6.5%gcc
oplsmxr			pkgconf@2.2.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc
fhud6vq	    zlib-ng@2.2.1%gcc

pcwnu2w pigz@2.8%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc
fhud6vq	    zlib-ng@2.2.1%gcc

oplsmxr pkgconf@2.2.0%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc

5wqqmsw pmix@5.0.3%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc
fwtuzgp	    hwloc@2.11.1%gcc
omw5cc4		libpciaccess@0.17%gcc
vdnwjqe		    util-macros@1.20.1%gcc
wozcmyn		libxml2@2.13.4%gcc
bsga3no		    libiconv@1.17%gcc
2fvrfr6		    xz@5.4.6%gcc
rvg7j6b		ncurses@6.5%gcc
xbwxobi	    libevent@2.1.12%gcc
5gigqgw		openssl@3.4.0%gcc
t2brqss		    ca-certificates-mozilla@2023-05-30%gcc
cwpt5ec		    perl@5.40.0%gcc
cexlioh			berkeley-db@18.1.40%gcc
ewqc7cx			bzip2@1.0.8%gcc
lljulvx			    diffutils@3.10%gcc
jj2atvs			gdbm@1.23%gcc
aylebxv			    readline@8.2%gcc
oplsmxr	    pkgconf@2.2.0%gcc
fhud6vq	    zlib-ng@2.2.1%gcc

gfyestl python@3.13.0%gcc
ewqc7cx	    bzip2@1.0.8%gcc
lljulvx		diffutils@3.10%gcc
hj6jtyr	    expat@2.6.4%gcc
hwya6i6		libbsd@0.12.2%gcc
qcfzttd		    libmd@1.0.4%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
jj2atvs	    gdbm@1.23%gcc
bexdfw2	    gettext@0.22.5%gcc
bsga3no		libiconv@1.17%gcc
wozcmyn		libxml2@2.13.4%gcc
mmv6i4n		tar@1.34%gcc
pcwnu2w		    pigz@2.8%gcc
t7h6imj		    zstd@1.5.6%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc
ltl5sqy	    libffi@3.4.6%gcc
rvg7j6b	    ncurses@6.5%gcc
5gigqgw	    openssl@3.4.0%gcc
t2brqss		ca-certificates-mozilla@2023-05-30%gcc
cwpt5ec		perl@5.40.0%gcc
cexlioh		    berkeley-db@18.1.40%gcc
oplsmxr	    pkgconf@2.2.0%gcc
aylebxv	    readline@8.2%gcc
ogdosm6	    sqlite@3.46.0%gcc
xesify5	    util-linux-uuid@2.40.2%gcc
2fvrfr6	    xz@5.4.6%gcc
fhud6vq	    zlib-ng@2.2.1%gcc

aylebxv readline@8.2%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc
rvg7j6b	    ncurses@6.5%gcc
oplsmxr		pkgconf@2.2.0%gcc

ogdosm6 sqlite@3.46.0%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc
aylebxv	    readline@8.2%gcc
rvg7j6b		ncurses@6.5%gcc
oplsmxr		    pkgconf@2.2.0%gcc
fhud6vq	    zlib-ng@2.2.1%gcc

mmv6i4n tar@1.34%gcc
ewqc7cx	    bzip2@1.0.8%gcc
lljulvx		diffutils@3.10%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc
bsga3no	    libiconv@1.17%gcc
pcwnu2w	    pigz@2.8%gcc
fhud6vq		zlib-ng@2.2.1%gcc
2fvrfr6	    xz@5.4.6%gcc
t7h6imj	    zstd@1.5.6%gcc

imrm45j tcl@8.6.12%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc
umrbkwv	    zlib-ng@2.0.7%gcc  cflags=-O3

w4gwr4e tcl@8.6.12%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc
fhud6vq	    zlib-ng@2.2.1%gcc

xesify5 util-linux-uuid@2.40.2%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc
oplsmxr	    pkgconf@2.2.0%gcc

vdnwjqe util-macros@1.20.1%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc

2fvrfr6 xz@5.4.6%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc

eogugqp yaksa@0.3%gcc
vgucajy	    autoconf@2.72%gcc
cwpt5ec		perl@5.40.0%gcc
cexlioh		    berkeley-db@18.1.40%gcc
awgfaon	    automake@1.16.5%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc
tt3byem	    libtool@2.4.7%gcc
2sbkhch		findutils@4.9.0%gcc
qaspjyq	    m4@1.4.19%gcc
lljulvx		diffutils@3.10%gcc
bsga3no		    libiconv@1.17%gcc
ea6qziv		libsigsegv@2.14%gcc
gfyestl	    python@3.13.0%gcc
ewqc7cx		bzip2@1.0.8%gcc
hj6jtyr		expat@2.6.4%gcc
hwya6i6		    libbsd@0.12.2%gcc
qcfzttd			libmd@1.0.4%gcc
jj2atvs		gdbm@1.23%gcc
bexdfw2		gettext@0.22.5%gcc
wozcmyn		    libxml2@2.13.4%gcc
mmv6i4n		    tar@1.34%gcc
pcwnu2w			pigz@2.8%gcc
t7h6imj			zstd@1.5.6%gcc
ltl5sqy		libffi@3.4.6%gcc
rvg7j6b		ncurses@6.5%gcc
5gigqgw		openssl@3.4.0%gcc
t2brqss		    ca-certificates-mozilla@2023-05-30%gcc
oplsmxr		pkgconf@2.2.0%gcc
aylebxv		readline@8.2%gcc
ogdosm6		sqlite@3.46.0%gcc
xesify5		util-linux-uuid@2.40.2%gcc
2fvrfr6		xz@5.4.6%gcc
fhud6vq		zlib-ng@2.2.1%gcc

ocxrmff zlib-ng@2.0.7%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc

umrbkwv zlib-ng@2.0.7%gcc  cflags=-O3
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc

fhud6vq zlib-ng@2.2.1%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc

t7h6imj zstd@1.5.6%gcc
hshzy76	    gcc-runtime@11.4.0%gcc
a7drdl4	    glibc@2.35%gcc
srkzfjr	    gmake@4.4.1%gcc

==> 68 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.14.5/tgtmflo
|\
| |\
| | |\
| | | |\
| | | | |\
| | | | | |\
| | o | | | | mpich@4.2.3/cqazuix
| |/| | | | |
| | |\| | | |
| | |\ \ \ \ \
| | | |\ \ \ \ \
| | | | |\ \ \ \ \
| | | | | |\ \ \ \ \
| | | | | | |\ \ \ \ \
| | | | | | | |\ \ \ \ \
| | | | | | | | |_|/ / /
| | | | | | | |/| | | |
| | | | | | | | |\ \ \ \
| | | | | | | | | |_|/ /
| | | | | | | | |/| | |
| | o | | | | | | | | | yaksa@0.3/eogugqp
| | |\ \ \ \ \ \ \ \ \ \
| | | |\ \ \ \ \ \ \ \ \ \
| | | | |\ \ \ \ \ \ \ \ \ \
| | | | | |\ \ \ \ \ \ \ \ \ \
| | | | | | |_|_|_|_|_|_|_|/ /
| | | | | |/| | | | | | | | |
| | | | | | |\ \ \ \ \ \ \ \ \
| | | | | | | |_|_|_|_|/ / / /
| | | | | | |/| | | | | | | |
| | | | | | | |\ \ \ \ \ \ \ \
| | | | | | | | |_|_|_|_|/ / /
| | | | | | | |/| | | | | | |
| | | | | | | | |\ \ \ \ \ \ \
| | o | | | | | | | | | | | | | python@3.13.0/gfyestl
| |/| | | | | | | | | | | | | |
|/|/| | | | | | | | | | | | | |
| | |\ \ \ \ \ \ \ \ \ \ \ \ \ \
| | | |\ \ \ \ \ \ \ \ \ \ \ \ \ \
| | | | |\ \ \ \ \ \ \ \ \ \ \ \ \ \
| | | | | |\ \ \ \ \ \ \ \ \ \ \ \ \ \
| | | | | | |\ \ \ \ \ \ \ \ \ \ \ \ \ \
| | | | | | | |\ \ \ \ \ \ \ \ \ \ \ \ \ \
| | | | | | | | |\ \ \ \ \ \ \ \ \ \ \ \ \ \
| | | | | | | | | |\ \ \ \ \ \ \ \ \ \ \ \ \ \
| | | | | | | | | | |_|_|/ / / / / / / / / / /
| | | | | | | | | |/| | | | | | | | | | | | |
| | | | | | | | | | |\ \ \ \ \ \ \ \ \ \ \ \ \
| | | | | | | | | | | |_|_|/ / / / / / / / / /
| | | | | | | | | | |/| | | | | | | | | | | |
| | | | | | | | | | | |\ \ \ \ \ \ \ \ \ \ \ \
| | | | | | | | | | | | |\ \ \ \ \ \ \ \ \ \ \ \
| | | | | | | | | | | | | |\ \ \ \ \ \ \ \ \ \ \ \
| | | | | | | | | | | | | | |_|_|/ / / / / / / / /
| | | | | | | | | | | | | |/| | | | | | | | | | |
| | | | | | | | | | | | | | |\ \ \ \ \ \ \ \ \ \ \
| | | o | | | | | | | | | | | | | | | | | | | | | | util-linux-uuid@2.40.2/xesify5
| | |/| | | | | | | | | | | | | | | | | | | | | | |
| |/| | | | | | | | | | | | | | | | | | | | | | | |
| | | |\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \
| | | | |_|_|_|_|_|/ / / / / / / / / / / / / / / / /
| | | |/| | | | | | | | | | | | | | | | | | | | | |
| | | | |\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \
| | | | | |_|_|_|_|_|/ / / / / / / / / / / / / / / /
| | | | |/| | | | | | | | | | | | | | | | | | | | |
| | | | | | |_|_|_|_|_|/ / / / / / / / / / / / / /
| | | | | |/| | | | | | | | | | | | | | | | | | |
| | | | | | o | | | | | | | | | | | | | | | | | | sqlite@3.46.0/ogdosm6
| |_|_|_|_|/| | | | | | | | | | | | | | | | | | |
|/| | | |_|/| | | | | | | | | | | | | | | | | | |
| | | |/| |/| | | | | | | | | | | | | | | | | | |
| | | | |/|/| | | | | | | | | | | | | | | | | | |
| | | | | | |/ / / / / / / / / / / / / / / / / /
| | | | | | | | | o | | | | | | | | | | | | | | libffi@3.4.6/ltl5sqy
| | | | |_|_|_|_|/| | | | | | | | | | | | | | |
| | | |/| |_|_|_|/| | | | | | | | | | | | | | |
| | | | |/| |_|_|/ / / / / / / / / / / / / / /
| | | | | |/| | | | | | | | | | | | | | | | |
| | | | | | | | | o | | | | | | | | | | | | | gettext@0.22.5/bexdfw2
| | | |_|_|_|_|_|/| | | | | | | | | | | | | |
| | |/| |_|_|_|_|/| | | | | | | | | | | | | |
| | | |/| |_|_|_|/| | | | | | | | | | | | | |
| | | | |/| |_|_|/| | | | | | | | | | | | | |
| | | | | |/| | |/| | | | | | | | | | | | | |
| | | | | | | | | |\ \ \ \ \ \ \ \ \ \ \ \ \ \
| | | | | | | | | | |\ \ \ \ \ \ \ \ \ \ \ \ \ \
| | | | | | | | | | | |_|_|_|_|_|_|_|/ / / / / /
| | | | | | | | | | |/| | | | | | | | | | | | |
| | | | | | | | | | | |\ \ \ \ \ \ \ \ \ \ \ \ \
| | | | | | | | | | | | | |_|/ / / / / / / / / /
| | | | | | | | | | | | |/| | | | | | | | | | |
| | | | | | | | | o | | | | | | | | | | | | | | tar@1.34/mmv6i4n
| | | |_|_|_|_|_|/| | | | | | | | | | | | | | |
| | |/| |_|_|_|_|/| | | | | | | | | | | | | | |
| | | |/| |_|_|_|/| | | | | | | | | | | | | | |
| | | | |/| |_|_|/| | | | | | | | | | | | | | |
| | | | | |/| | | | | | | | | | | | | | | | | |
| | | | | | | | | |\ \ \ \ \ \ \ \ \ \ \ \ \ \ \
| | | | | | | | | | |\ \ \ \ \ \ \ \ \ \ \ \ \ \ \
| | | | | | | | | | | |\ \ \ \ \ \ \ \ \ \ \ \ \ \ \
| | | | | | | | | | | | |_|/ / / / / / / / / / / / /
| | | | | | | | | | | |/| | | | | | | | | | | | | |
| | | | | | | | | | | | |/ / / / / / / / / / / / /
| | | | | | | | | o | | | | | | | | | | | | | | | zstd@1.5.6/t7h6imj
| | | | |_|_|_|_|/| | | | | | | | | | | | | | | |
| | | |/| |_|_|_|/| | | | | | | | | | | | | | | |
| | | | |/| |_|_|/ / / / / / / / / / / / / / / /
| | | | | |/| | | | | | | | | | | | | | | | | |
| | | | | | | | | o | | | | | | | | | | | | | | pigz@2.8/pcwnu2w
| |_|_|_|_|_|_|_|/| | | | | | | | | | | | | | |
|/| | | |_|_|_|_|/| | | | | | | | | | | | | | |
| | | |/| |_|_|_|/| | | | | | | | | | | | | | |
| | | | |/| |_|_|/ / / / / / / / / / / / / / /
| | | | | |/| | | | | | | | | | | | | | | | |
| | | | | | | | | | | | | o | | | | | | | | | expat@2.6.4/hj6jtyr
| | | | |_|_|_|_|_|_|_|_|/| | | | | | | | | |
| | | |/| |_|_|_|_|_|_|_|/| | | | | | | | | |
| | | | |/| |_|_|_|_|_|_|/| | | | | | | | | |
| | | | | |/| | | | | | | | | | | | | | | | |
| | | | | | | | | | | | | o | | | | | | | | | libbsd@0.12.2/hwya6i6
| | | | |_|_|_|_|_|_|_|_|/| | | | | | | | | |
| | | |/| |_|_|_|_|_|_|_|/| | | | | | | | | |
| | | | |/| |_|_|_|_|_|_|/| | | | | | | | | |
| | | | | |/| | | | | | | | | | | | | | | | |
| | | | | | | | | | | | | o | | | | | | | | | libmd@1.0.4/qcfzttd
| | | | |_|_|_|_|_|_|_|_|/| | | | | | | | | |
| | | |/| |_|_|_|_|_|_|_|/| | | | | | | | | |
| | | | |/| |_|_|_|_|_|_|/ / / / / / / / / /
| | | | | |/| | | | | | | | | | | | | | | |
| | | | | | | | | | | | | | o | | | | | | | libtool@2.4.7/tt3byem
| | | | |_|_|_|_|_|_|_|_|_|/| | | | | | | |
| | | |/| |_|_|_|_|_|_|_|_|/| | | | | | | |
| | | | |/| |_|_|_|_|_|_|_|/| | | | | | | |
| | | | | |/| | | | | | | |/| | | | | | | |
| | | | | | | | | | | | | | | |_|_|_|_|/ /
| | | | | | | | | | | | | | |/| | | | | |
| | | | | | | | | | | | | | | o | | | | | automake@1.16.5/awgfaon
| | | | |_|_|_|_|_|_|_|_|_|_|/| | | | | |
| | | |/| |_|_|_|_|_|_|_|_|_|/| | | | | |
| | | | |/| |_|_|_|_|_|_|_|_|/| | | | | |
| | | | | |/| | | | | | | | | | | | | | |
| | | | | | | | | | | | | | | |\| | | | |
| | | | | | | | | | | | | | | | o | | | | autoconf@2.72/vgucajy
| | | | |_|_|_|_|_|_|_|_|_|_|_|/| | | | |
| | | |/| |_|_|_|_|_|_|_|_|_|_|/| | | | |
| | | | |/| |_|_|_|_|_|_|_|_|_|/| | | | |
| | | | | |/| | | | | | | | |_|/| | | | |
| | | | | | | | | | | | | |/| |/ / / / /
| | | | | | | | | | | | | o | | | | | | m4@1.4.19/qaspjyq
| | | | |_|_|_|_|_|_|_|_|/| | | | | | |
| | | |/| |_|_|_|_|_|_|_|/| | | | | | |
| | | | |/| |_|_|_|_|_|_|/| | | | | | |
| | | | | |/| | | | | | | | | | | | | |
| | | | | | | | | | | | | |\ \ \ \ \ \ \
| | | | | | | | | | | | | o | | | | | | | libsigsegv@2.14/ea6qziv
| | | | |_|_|_|_|_|_|_|_|/| | | | | | | |
| | | |/| |_|_|_|_|_|_|_|/| | | | | | | |
| | | | |/| |_|_|_|_|_|_|/ / / / / / / /
| | | | | |/| | | | | | | | | | | | | |
| | | | | | | | | | | | | | | | | o | | libfabric@1.22.0/lr77ky6
| | | | |_|_|_|_|_|_|_|_|_|_|_|_|/| | |
| | | |/| |_|_|_|_|_|_|_|_|_|_|_|/| | |
| | | | |/| |_|_|_|_|_|_|_|_|_|_|/ / /
| | | | | |/| | | | | | | | | | | | |
| | | | | | | | | | | | | | | | | o | hwloc@2.11.1/fwtuzgp
| | |_|_|_|_|_|_|_|_|_|_|_|_|_|_|/| |
| |/| | |_|_|_|_|_|_|_|_|_|_|_|_|/| |
| | | |/| |_|_|_|_|_|_|_|_|_|_|_|/| |
| | | | |/| |_|_|_|_|_|_|_|_|_|_|/| |
| | | | | |/| | | |_|_|_|_|_|_|_|/| |
| | | | | | | | |/| | | |_|_|_|_|/| |
| | | | | | | | | | | |/| | | | |/ /
| | | | | | | | | | | o | | | | | | libxml2@2.13.4/wozcmyn
| |_|_|_|_|_|_|_|_|_|/| | | | | | |
|/| |_|_|_|_|_|_|_|_|/| | | | | | |
| |/| |_|_|_|_|_|_|_|/| | | | | | |
| | |/| |_|_|_|_|_|_|/| | | | | | |
| | | |/| |_|_|_|_|_|/| | | | | | |
| | | | |/| |_|_|_|_|/| | | | | | |
| | | | | |/| | | | |/ / / / / / /
| | | | | | | | | |/| | | | | | |
| | o | | | | | | | | | | | | | | xz@5.4.6/2fvrfr6
| | |\| | | | | | | | | | | | | |
| | |\ \ \ \ \ \ \ \ \ \ \ \ \ \ \
| | | |_|/ / / / / / / / / / / / /
| | |/| | | | | | | | | | | | | |
| | | |/ / / / / / / / / / / / /
| | | | | | | | | | | | | | o | libpciaccess@0.17/omw5cc4
| | |_|_|_|_|_|_|_|_|_|_|_|/| |
| |/| |_|_|_|_|_|_|_|_|_|_|/| |
| | |/| |_|_|_|_|_|_|_|_|_|/| |
| | | |/| |_|_|_|_|_|_|_|_|/| |
| | | | |/| | | | | | | | | | |
| | | | | | | | | | | | | | o | util-macros@1.20.1/vdnwjqe
| | | |_|_|_|_|_|_|_|_|_|_|/| |
| | |/| |_|_|_|_|_|_|_|_|_|/| |
| | | |/| |_|_|_|_|_|_|_|_|/ /
| | | | |/| | | | | | | | | |
| | | | | | | | | | | | o | | findutils@4.9.0/2sbkhch
| | | |_|_|_|_|_|_|_|_|/| | |
| | |/| |_|_|_|_|_|_|_|/| | |
| | | |/| |_|_|_|_|_|_|/ / /
| | | | |/| | | | | | | | |
| | | | | | | | | | | | | o cmake@3.30.5/d2nwbxl
| |_|_|_|_|_|_|_|_|_|_|_|/|
|/| | |_|_|_|_|_|_|_|_|_|/|
| | |/| |_|_|_|_|_|_|_|_|/|
| | | |/| |_|_|_|_|_|_|_|/|
| | | | |/| | | |_|_|_|_|/|
| | | | | | | |/| | | | | |
| | | | | | | | | | | | | o curl@8.10.1/fpywomo
| |_|_|_|_|_|_|_|_|_|_|_|/|
|/| |_|_|_|_|_|_|_|_|_|_|/|
| |/| |_|_|_|_|_|_|_|_|_|/|
| | |/| |_|_|_|_|_|_|_|_|/|
| | | |/| |_|_|_|_|_|_|_|/|
| | | | |/| | |_|_|_|_|_|/|
| | | | | | |/| | | | | | |
| | | | | | o | | | | | | | openssl@3.4.0/5gigqgw
| |_|_|_|_|/| | | | | | | |
|/| | |_|_|/| | | | | | | |
| | |/| |_|/| | | | | | | |
| | | |/| |/| | | | | | | |
| | | | |/| | | | | | | | |
| | | | | | |\ \ \ \ \ \ \ \
| | | | | | | |_|_|_|_|_|/ /
| | | | | | |/| | | | | | |
| | | | | | o | | | | | | | perl@5.40.0/cwpt5ec
| |_|_|_|_|/| | | | | | | |
|/| | |_|_|/| | | | | | | |
| | |/| |_|/| | | | | | | |
| | | |/| |/| | | | | | | |
| | | | |/| | | | | | | | |
| | | | | | |\ \ \ \ \ \ \ \
| | | | | | | |_|_|_|_|/ / /
| | | | | | |/| | | | | | |
| | | | | | | |\ \ \ \ \ \ \
| | | | | | | | |_|_|_|/ / /
| | | | | | | |/| | | | | |
o | | | | | | | | | | | | | zlib-ng@2.2.1/fhud6vq
|\ \ \ \ \ \ \ \ \ \ \ \ \ \
| |_|_|_|/ / / / / / / / / /
|/| | | | | | | | | | | | |
| |\ \ \ \ \ \ \ \ \ \ \ \ \
| | |_|/ / / / / / / / / / /
| |/| | | | | | | | | | | |
| | |/ / / / / / / / / / /
| | | | | o | | | | | | | gdbm@1.23/jj2atvs
| |_|_|_|/| | | | | | | |
|/| |_|_|/| | | | | | | |
| |/| |_|/| | | | | | | |
| | |/| |/ / / / / / / /
| | | | o | | | | | | | readline@8.2/aylebxv
| |_|_|/| | | | | | | |
|/| |_|/| | | | | | | |
| |/| |/| | | | | | | |
| | |/| | | | | | | | |
| | | | | |_|_|/ / / /
| | | | |/| | | | | |
| | | | o | | | | | | ncurses@6.5/rvg7j6b
| |_|_|/| | | | | | |
|/| |_|/| | | | | | |
| |/| |/| | | | | | |
| | |/|/ / / / / / /
| | | | o | | | | | bzip2@1.0.8/ewqc7cx
| |_|_|/| | | | | |
|/| |_|/| | | | | |
| |/| |/| | | | | |
| | |/| | | | | | |
| | | | | |_|_|/ /
| | | | |/| | | |
| | | | | o | | | berkeley-db@18.1.40/cexlioh
| |_|_|_|/| | | |
|/| |_|_|/| | | |
| |/| |_|/ / / /
| | |/| | | | |
| | | | | o | | ca-certificates-mozilla@2023-05-30/t2brqss
| | |_|_|/| | |
| |/| |_|/ / /
| | |/| | | |
| | | | | | o nghttp2@1.63.0/t2qkug7
| |_|_|_|_|/|
|/| |_|_|_|/|
| |/| |_|_|/|
| | |/| |_|/|
| | | |/| |/
| | | | |/|
| | | o | | pkgconf@2.2.0/oplsmxr
| |_|/| | |
|/| |/| | |
| |/|/ / /
| | | o | diffutils@3.10/lljulvx
| |_|/| |
|/| |/| |
| |/|/| |
| | | |/
| | | o libiconv@1.17/bsga3no
| |_|/|
|/| |/|
| |/|/
o | | gmake@4.4.1/srkzfjr
|\| |
| |/
|/|
o | gcc-runtime@11.4.0/hshzy76
|/
o glibc@2.35/a7drdl4

HDF5 is more complicated than our basic example of zlib-ng 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
[+] /usr (external glibc-2.35-a7drdl4tlx4bu3mzhor75pskvd3pdot6)
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gcc-runtime-11.4.0-hshzy762rns57ibvxiyi3qqvc4nehse2
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gmake-4.4.1-srkzfjru5z55bl5gy24dbjsrvqwg5fom
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libxcrypt-4.4.35-v64tnmrjg7o5beyhae6x42vqlcxzdon6
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libpciaccess-0.17-omw5cc44g5qrphf7aqyjpdpmw2b3tr4i
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/zlib-ng-2.2.1-fhud6vqkh7jaesckalgqg5xxml72in6i
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/zstd-1.5.6-t7h6imj35ruac562vr7snzvli2h2tzup
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/bzip2-1.0.8-ewqc7cx44b63asa742p2asywp2k6rfto
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libiconv-1.17-bsga3novxptycgb4bpv4mldtq3f5m7mj
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/nghttp2-1.63.0-t2qkug7u7irxunnirgisvdu4mdoerrxt
==> Installing openblas-0.3.28-w2fghghowf7wdz5fyl6sjqfdp232uksm [11/30]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-openblas-0.3.28-w2fghghowf7wdz5fyl6sjqfdp232uksm.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/openblas-0.3.28/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-openblas-0.3.28-w2fghghowf7wdz5fyl6sjqfdp232uksm.spack
==> Extracting openblas-0.3.28-w2fghghowf7wdz5fyl6sjqfdp232uksm from binary cache
==> openblas: Successfully installed openblas-0.3.28-w2fghghowf7wdz5fyl6sjqfdp232uksm
  Search: 0.00s.  Fetch: 0.16s.	 Install: 1.03s.  Extract: 0.97s.  Relocate: 0.05s.  Total: 1.20s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/openblas-0.3.28-w2fghghowf7wdz5fyl6sjqfdp232uksm
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/numactl-2.0.18-euqyy3hu6d7yiuf67q6xgmiwtlgfkanp
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/xz-5.4.6-2fvrfr67ahyx5vqg6hyd3dachcl3nl2k
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/ncurses-6.5-rvg7j6bmergf3is4yoacm5sgsi7l4tvm
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/pigz-2.8-pcwnu2wfae7nfv5isb3kcl7otav2m5zy
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/openssl-3.4.0-5gigqgwld4jgaxb46pzeavxuicamdgvw
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libxml2-2.13.4-wozcmyn2bivorr7geiwavaqeosmwmaow
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libedit-3.1-20240808-nhrbcomj5lgnql2itckj7py3hi6wuz5d
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/tar-1.34-mmv6i4naeg746pk2xpypdpejwvypmegb
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/curl-8.10.1-fpywomo74ruadasuelzpvql7zj6rufeo
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libevent-2.1.12-xbwxobi4cjizcuch7ukmi4igoosktbma
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/hwloc-2.11.1-fwtuzgpmp2dy3udiekh6nwnbcld22kmk
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gettext-0.22.5-bexdfw2vfc64r6u72mqestm6olahfr6e
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/cmake-3.30.5-d2nwbxlz2qe2hqu7yy4v6vlgiz6qihwj
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/pmix-5.0.3-5wqqmswtibbhuilr356mzviq4flzdc3z
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/krb5-1.21.3-pq3as37xnogsfkivav3r6phgtsuwhjlb
==> Installing kokkos-4.3.01-nxt5zthcpfy5k52tm7ia2g64avvziltw [27/30]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-kokkos-4.3.01-nxt5zthcpfy5k52tm7ia2g64avvziltw.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/kokkos-4.3.01/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-kokkos-4.3.01-nxt5zthcpfy5k52tm7ia2g64avvziltw.spack
==> Extracting kokkos-4.3.01-nxt5zthcpfy5k52tm7ia2g64avvziltw from binary cache
==> kokkos: Successfully installed kokkos-4.3.01-nxt5zthcpfy5k52tm7ia2g64avvziltw
  Search: 0.00s.  Fetch: 0.01s.	 Install: 0.16s.  Extract: 0.13s.  Relocate: 0.01s.  Total: 0.17s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/kokkos-4.3.01-nxt5zthcpfy5k52tm7ia2g64avvziltw
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/openssh-9.9p1-wz7w27t54u5lcphpvtwvv43vmhwmqwkn
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/openmpi-5.0.5-jvwxvxe7dgexcutl2wtjaibbrnpys3ea
==> Installing trilinos-16.0.0-ney6hmmpufagz63vykeffmatlnyihzlq [30/30]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-trilinos-16.0.0-ney6hmmpufagz63vykeffmatlnyihzlq.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/trilinos-16.0.0/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-trilinos-16.0.0-ney6hmmpufagz63vykeffmatlnyihzlq.spack
==> Extracting trilinos-16.0.0-ney6hmmpufagz63vykeffmatlnyihzlq from binary cache
==> trilinos: Successfully installed trilinos-16.0.0-ney6hmmpufagz63vykeffmatlnyihzlq
  Search: 0.00s.  Fetch: 0.03s.	 Install: 2.67s.  Extract: 2.24s.  Relocate: 0.40s.  Total: 2.70s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/trilinos-16.0.0-ney6hmmpufagz63vykeffmatlnyihzlq

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
[+] /usr (external glibc-2.35-a7drdl4tlx4bu3mzhor75pskvd3pdot6)
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gcc-runtime-11.4.0-hshzy762rns57ibvxiyi3qqvc4nehse2
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/nghttp2-1.63.0-t2qkug7u7irxunnirgisvdu4mdoerrxt
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/ncurses-6.5-rvg7j6bmergf3is4yoacm5sgsi7l4tvm
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/xz-5.4.6-2fvrfr67ahyx5vqg6hyd3dachcl3nl2k
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/kokkos-4.3.01-nxt5zthcpfy5k52tm7ia2g64avvziltw
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gmake-4.4.1-srkzfjru5z55bl5gy24dbjsrvqwg5fom
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libpciaccess-0.17-omw5cc44g5qrphf7aqyjpdpmw2b3tr4i
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libiconv-1.17-bsga3novxptycgb4bpv4mldtq3f5m7mj
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/pkgconf-2.2.0-oplsmxryrcg6ackisqtpszdarzch6a6t
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/yaksa-0.3-eogugqp4p6rmv7uuuyc222ae6327j2cn
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libfabric-1.22.0-lr77ky6sw7xcwn6nz6i3zs4gwun5rshz
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/zlib-ng-2.2.1-fhud6vqkh7jaesckalgqg5xxml72in6i
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/openblas-0.3.28-w2fghghowf7wdz5fyl6sjqfdp232uksm
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/openssl-3.4.0-5gigqgwld4jgaxb46pzeavxuicamdgvw
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libxml2-2.13.4-wozcmyn2bivorr7geiwavaqeosmwmaow
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/curl-8.10.1-fpywomo74ruadasuelzpvql7zj6rufeo
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/hwloc-2.11.1-fwtuzgpmp2dy3udiekh6nwnbcld22kmk
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/cmake-3.30.5-d2nwbxlz2qe2hqu7yy4v6vlgiz6qihwj
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/mpich-4.2.3-cqazuix44irmawg3ifmyqvnaeb2t5vi5
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/hdf5-1.14.5-tgtmflo4s6hqenvkle7urqiz2w6rumph
==> Installing trilinos-16.0.0-63sfm7p6vebucsnbmwfnx36hiyal7e3e [22/22]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-trilinos-16.0.0-63sfm7p6vebucsnbmwfnx36hiyal7e3e.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/trilinos-16.0.0/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-trilinos-16.0.0-63sfm7p6vebucsnbmwfnx36hiyal7e3e.spack
==> Extracting trilinos-16.0.0-63sfm7p6vebucsnbmwfnx36hiyal7e3e from binary cache
==> trilinos: Successfully installed trilinos-16.0.0-63sfm7p6vebucsnbmwfnx36hiyal7e3e
  Search: 0.00s.  Fetch: 0.17s.	 Install: 2.68s.  Extract: 2.27s.  Relocate: 0.39s.  Total: 2.86s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/trilinos-16.0.0-63sfm7p6vebucsnbmwfnx36hiyal7e3e

We see that every package in the Trilinos DAG that depends on MPI now uses MPICH.

$ spack find -d trilinos
-- linux-ubuntu22.04-x86_64_v3 / gcc@11.4.0 ---------------------
trilinos@16.0.0
    cmake@3.30.5
	curl@8.10.1
	    nghttp2@1.63.0
		diffutils@3.10
	    openssl@3.4.0
		ca-certificates-mozilla@2023-05-30
	ncurses@6.5
	zlib-ng@2.2.1
    gcc-runtime@11.4.0
    glibc@2.35
    gmake@4.4.1
    hwloc@2.11.1
	libpciaccess@0.17
	    util-macros@1.20.1
	libxml2@2.13.4
	    libiconv@1.17
	    xz@5.4.6
	pkgconf@2.2.0
    kokkos@4.3.01
    openblas@0.3.28
    openmpi@5.0.5
	autoconf@2.72
	    m4@1.4.19
		libsigsegv@2.14
	automake@1.16.5
	libevent@2.1.12
	libtool@2.4.7
	    findutils@4.9.0
	numactl@2.0.18
	openssh@9.9p1
	    krb5@1.21.3
		bison@3.8.2
		gettext@0.22.5
		    tar@1.34
			pigz@2.8
			zstd@1.5.6
	    libedit@3.1-20240808
	    libxcrypt@4.4.35
	perl@5.40.0
	    berkeley-db@18.1.40
	    bzip2@1.0.8
	    gdbm@1.23
		readline@8.2
	pmix@5.0.3

trilinos@16.0.0
    cmake@3.30.5
	curl@8.10.1
	    nghttp2@1.63.0
		diffutils@3.10
	    openssl@3.4.0
		ca-certificates-mozilla@2023-05-30
		perl@5.40.0
		    berkeley-db@18.1.40
	ncurses@6.5
	zlib-ng@2.2.1
    gcc-runtime@11.4.0
    glibc@2.35
    gmake@4.4.1
    hdf5@1.14.5
	pkgconf@2.2.0
    hwloc@2.11.1
	libpciaccess@0.17
	    util-macros@1.20.1
	libxml2@2.13.4
	    libiconv@1.17
	    xz@5.4.6
    kokkos@4.3.01
    mpich@4.2.3
	findutils@4.9.0
	libfabric@1.22.0
	yaksa@0.3
	    autoconf@2.72
	    automake@1.16.5
	    libtool@2.4.7
	    m4@1.4.19
		libsigsegv@2.14
	    python@3.13.0
		bzip2@1.0.8
		expat@2.6.4
		    libbsd@0.12.2
			libmd@1.0.4
		gdbm@1.23
		gettext@0.22.5
		    tar@1.34
			pigz@2.8
			zstd@1.5.6
		libffi@3.4.6
		readline@8.2
		sqlite@3.46.0
		util-linux-uuid@2.40.2
    openblas@0.3.28

==> 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@16.0.0/ney6hmm
|\
| |\
| | |\
| | | |\
| | | | |\
| | | | | |\
| | | | | | |\
o | | | | | | | openmpi@5.0.5/jvwxvxe
|\ \ \ \ \ \ \ \
| |\ \ \ \ \ \ \ \
| | |\ \ \ \ \ \ \ \
| | | |\ \ \ \ \ \ \ \
| | | | |\ \ \ \ \ \ \ \
| | | | | |\ \ \ \ \ \ \ \
| | | | | | |\ \ \ \ \ \ \ \
| | | | | | | |\ \ \ \ \ \ \ \
| | | | | | | | |\ \ \ \ \ \ \ \
| | | | | | | | | |_|_|/ / / / /
| | | | | | | | |/| | | | | | |
| | | | | | | | | |\ \ \ \ \ \ \
| | | | | | | | | | |_|_|/ / / /
| | | | | | | | | |/| | | | | |
| | | | | | | | | | |\ \ \ \ \ \
| | | | | | | | | | | |_|_|/ / /
| | | | | | | | | | |/| | | | |
| | | | | | | | | | | |\ \ \ \ \
| | | | | | | | | | | | |_|_|/ /
| | | | | | | | | | | |/| | | |
| | | | | | | | | | | | |\ \ \ \
| o | | | | | | | | | | | | | | | pmix@5.0.3/5wqqmsw
|/| | | | | | | | | | | | | | | |
| |\| | | | | | | | | | | | | | |
| |\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \
| | |_|_|_|_|_|/ / / / / / / / / /
| |/| | | | | | | | | | | | | | |
| | |\ \ \ \ \ \ \ \ \ \ \ \ \ \ \
| | | |_|_|_|_|_|/ / / / / / / / /
| | |/| | | | | | | | | | | | | |
| | | |\ \ \ \ \ \ \ \ \ \ \ \ \ \
| | | | |_|_|_|_|_|/ / / / / / / /
| | | |/| | | | | | | | | | | | |
| | | | |\ \ \ \ \ \ \ \ \ \ \ \ \
| | | | | |_|_|_|_|_|/ / / / / / /
| | | | |/| | | | | | | | | | | |
| | | | | | |_|_|_|/ / / / / / /
| | | | | |/| | | | | | | | | |
| | | | | | | | o | | | | | | | openssh@9.9p1/wz7w27t
| |_|_|_|_|_|_|/| | | | | | | |
|/| | | |_|_|_|/| | | | | | | |
| | | |/| |_|_|/| | | | | | | |
| | | | |/| |_|/| | | | | | | |
| | | | | |/| | | | | | | | | |
| | | | | | | | |\ \ \ \ \ \ \ \
| | | | | | | | | |\ \ \ \ \ \ \ \
| | | | | | | | | | |\ \ \ \ \ \ \ \
| | | | | | | | | | | |\ \ \ \ \ \ \ \
| | | | | | | | | | o | | | | | | | | | libxcrypt@4.4.35/v64tnmr
| | | | |_|_|_|_|_|/| | | | | | | | | |
| | | |/| |_|_|_|_|/| | | | | | | | | |
| | | | |/| |_|_|_|/| | | | | | | | | |
| | | | | |/| | |_|/ / / / / / / / / /
| | | | | | | |/| | | | | | | | | | |
| | | | | | | | | | o | | | | | | | | libedit@3.1-20240808/nhrbcom
| | | | |_|_|_|_|_|/| | | | | | | | |
| | | |/| |_|_|_|_|/| | | | | | | | |
| | | | |/| |_|_|_|/| | | | | | | | |
| | | | | |/| |_|_|/| | | | | | | | |
| | | | | | |/| | |/ / / / / / / / /
| | | | | | | | | | o | | | | | | | krb5@1.21.3/pq3as37
| | | | |_|_|_|_|_|/| | | | | | | |
| | | |/| |_|_|_|_|/| | | | | | | |
| | | | |/| |_|_|_|/| | | | | | | |
| | | | | |/| |_|_|/| | | | | | | |
| | | | | | |/| |_|/| | | | | | | |
| | | | | | | |/| |/| | | | | | | |
| | | | | | | | |/| | | | | | | | |
| | | | | | | | | | |\ \ \ \ \ \ \ \
| | | | | | | | | | | |\ \ \ \ \ \ \ \
| | | | | | | | | | | | |\ \ \ \ \ \ \ \
| | | | | | | | | | o | | | | | | | | | | gettext@0.22.5/bexdfw2
| | | | |_|_|_|_|_|/| | | | | | | | | | |
| | | |/| |_|_|_|_|/| | | | | | | | | | |
| | | | |/| |_|_|_|/| | | | | | | | | | |
| | | | | |/| | | |/| | | | | | | | | | |
| | | | | | | | | | |\ \ \ \ \ \ \ \ \ \ \
| | | | | | | | | | | |\ \ \ \ \ \ \ \ \ \ \
| | | | | | | | | | | | |\ \ \ \ \ \ \ \ \ \ \
| | | | | | | | | | | | | |\ \ \ \ \ \ \ \ \ \ \
| | | | | | | | | | | o | | | | | | | | | | | | | tar@1.34/mmv6i4n
| | | | |_|_|_|_|_|_|/| | | | | | | | | | | | | |
| | | |/| |_|_|_|_|_|/| | | | | | | | | | | | | |
| | | | |/| |_|_|_|_|/| | | | | | | | | | | | | |
| | | | | |/| | | | |/| | | | | | | | | | | | | |
| | | | | | | | | | | |\ \ \ \ \ \ \ \ \ \ \ \ \ \
| | | | | | | | | | | | |\ \ \ \ \ \ \ \ \ \ \ \ \ \
| | | | | | | | | | | | | |\ \ \ \ \ \ \ \ \ \ \ \ \ \
| | | | | | | | | | | | | | |_|/ / / / / / / / / / / /
| | | | | | | | | | | | | |/| | | | | | | | | | | | |
| | | | | | | | | | | | | | |/ / / / / / / / / / / /
| | | | | | | | | | | o | | | | | | | | | | | | | | zstd@1.5.6/t7h6imj
| | | | |_|_|_|_|_|_|/| | | | | | | | | | | | | | |
| | | |/| |_|_|_|_|_|/| | | | | | | | | | | | | | |
| | | | |/| |_|_|_|_|/ / / / / / / / / / / / / / /
| | | | | |/| | | | | | | | | | | | | | | | | | |
| | | | | | | | | | | o | | | | | | | | | | | | | pigz@2.8/pcwnu2w
| |_|_|_|_|_|_|_|_|_|/| | | | | | | | | | | | | |
|/| | | |_|_|_|_|_|_|/| | | | | | | | | | | | | |
| | | |/| |_|_|_|_|_|/| | | | | | | | | | | | | |
| | | | |/| |_|_|_|_|/ / / / / / / / / / / / / /
| | | | | |/| | | | | | | | | | | | | | | | | |
| | | | | | | | | | | | | | | | o | | | | | | | bison@3.8.2/sllhx5n
| | | | |_|_|_|_|_|_|_|_|_|_|_|/| | | | | | | |
| | | |/| |_|_|_|_|_|_|_|_|_|_|/| | | | | | | |
| | | | |/| |_|_|_|_|_|_|_|_|_|/| | | | | | | |
| | | | | |/| | | | | | | | | |/| | | | | | | |
| | | | | | | | | | | | | | | | | o | | | | | | numactl@2.0.18/euqyy3h
| | | | |_|_|_|_|_|_|_|_|_|_|_|_|/| | | | | | |
| | | |/| |_|_|_|_|_|_|_|_|_|_|_|/| | | | | | |
| | | | |/| |_|_|_|_|_|_|_|_|_|_|/| | | | | | |
| | | | | |/| | | | | | | | | | |/| | | | | | |
| | | | | | | | | | | | | | | | | |\| | | | | |
| | | | | | | | | | | | | | | | | |\ \ \ \ \ \ \
| | | | | | | | | | | | | | | | | | |_|/ / / / /
| | | | | | | | | | | | | | | | | |/| | | | | |
| | | | | | | | | | | | | | | | | | |/ / / / /
| | | | | | | | | | | | | | | | | | | o | | | libtool@2.4.7/tt3byem
| | | | |_|_|_|_|_|_|_|_|_|_|_|_|_|_|/| | | |
| | | |/| |_|_|_|_|_|_|_|_|_|_|_|_|_|/| | | |
| | | | |/| |_|_|_|_|_|_|_|_|_|_|_|_|/| | | |
| | | | | |/| | | | | | | | | |_|_|_|/| | | |
| | | | | | | | | | | | | | |/| | |_|/ / / /
| | | | | | | | | | | | | | | | |/| | | | |
| | | | | | | | | | | | | | o | | | | | | | findutils@4.9.0/2sbkhch
| | | | |_|_|_|_|_|_|_|_|_|/| | | | | | | |
| | | |/| |_|_|_|_|_|_|_|_|/| | | | | | | |
| | | | |/| |_|_|_|_|_|_|_|/ / / / / / / /
| | | | | |/| | | | | | | | | | | | | | |
| o | | | | | | | | | | | | | | | | | | | libevent@2.1.12/xbwxobi
| |\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \
| | |_|_|_|_|_|_|/ / / / / / / / / / / / /
| |/| | | | | | | | | | | | | | | | | | |
| | |\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \
| | | |_|/ / / / / / / / / / / / / / / / /
| | |/| | | | | | | | | | | | | | | | | |
| | | |\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \
| | | | |_|/ / / / / / / / / / / / / / / /
| | | |/| | | | | | | | | | | | | | | | |
| | | | |/ / / / / / / / / / / / / / / /
| | | | | | | | | | | | | | | o | | | | automake@1.16.5/awgfaon
| | | |_|_|_|_|_|_|_|_|_|_|_|/| | | | |
| | |/| |_|_|_|_|_|_|_|_|_|_|/| | | | |
| | | |/| |_|_|_|_|_|_|_|_|_|/| | | | |
| | | | |/| | | |_|_|_|_|_|_|/| | | | |
| | | | | | | |/| | | | | | | | | | | |
| | | | | | | | | | | | | | | |/ / / /
| | | | | | | | | | | | | | | o | | | autoconf@2.72/vgucajy
| | | |_|_|_|_|_|_|_|_|_|_|_|/| | | |
| | |/| |_|_|_|_|_|_|_|_|_|_|/| | | |
| | | |/| |_|_|_|_|_|_|_|_|_|/| | | |
| | | | |/| | | |_|_|_|_|_|_|/| | | |
| | | | | | | |/| | | | | | |/ / / /
| | | | | | | | | | | | | | o | | | m4@1.4.19/qaspjyq
| | | |_|_|_|_|_|_|_|_|_|_|/| | | |
| | |/| |_|_|_|_|_|_|_|_|_|/| | | |
| | | |/| |_|_|_|_|_|_|_|_|/| | | |
| | | | |/| | | | | | | | |/| | | |
| | | | | | | | | | | | | | o | | | libsigsegv@2.14/ea6qziv
| | | |_|_|_|_|_|_|_|_|_|_|/| | | |
| | |/| |_|_|_|_|_|_|_|_|_|/| | | |
| | | |/| |_|_|_|_|_|_|_|_|/ / / /
| | | | |/| | | | | | | | | | | |
| | | | | | | | | | | | | | o | | openblas@0.3.28/w2fghgh
| | | |_|_|_|_|_|_|_|_|_|_|/| | |
| | |/| |_|_|_|_|_|_|_|_|_|/| | |
| | | |/| |_|_|_|_|_|_|_|_|/ / /
| | | | |/| | | | | | | | | | |
| | | | | | | | | | | | | | o | kokkos@4.3.01/nxt5zth
| | | |_|_|_|_|_|_|_|_|_|_|/| |
| | |/| |_|_|_|_|_|_|_|_|_|/| |
| | | |/| |_|_|_|_|_|_|_|_|/| |
| | | | |/| | | | | | | | | | |
| | | | | | | | | | | | | | |/
| | | | | o | | | | | | | | | hwloc@2.11.1/fwtuzgp
| | | |_|/| | | | | | | | | |
| | |/| |/| | | | | | | | | |
| | | |/|/| | | | | | | | | |
| | | | | |\| | | | | | | | |
| | | | | |\ \ \ \ \ \ \ \ \ \
| | | | | | |_|_|/ / / / / / /
| | | | | |/| | | | | | | | |
| | | | | | |\ \ \ \ \ \ \ \ \
| | | | | | | |_|_|_|_|_|/ / /
| | | | | | |/| | | | | | | |
| | | | | | o | | | | | | | | libxml2@2.13.4/wozcmyn
| |_|_|_|_|/| | | | | | | | |
|/| | |_|_|/| | | | | | | | |
| | |/| |_|/| | | | | | | | |
| | | |/| |/| | | | | | | | |
| | | | |/| | | | | | | | | |
| | | | | | |\ \ \ \ \ \ \ \ \
| | | | | | | |_|_|_|/ / / / /
| | | | | | |/| | | | | | | |
| | | | | | | |\ \ \ \ \ \ \ \
| | | | | | | | |_|/ / / / / /
| | | | | | | |/| | | | | | |
| | | | | | | | | |/ / / / /
| | | | | | | | |/| | | | |
| | | | | | o | | | | | | | xz@5.4.6/2fvrfr6
| | | |_|_|/| | | | | | | |
| | |/| |_|/| | | | | | | |
| | | |/| |/ / / / / / / /
| | | | |/| | | | | | | |
| | | | | | | | o | | | | libpciaccess@0.17/omw5cc4
| | | |_|_|_|_|/| | | | |
| | |/| |_|_|_|/| | | | |
| | | |/| |_|_|/| | | | |
| | | | |/| | |/| | | | |
| | | | | | |/| | | | | |
| | | | | | | | o | | | | util-macros@1.20.1/vdnwjqe
| | | |_|_|_|_|/| | | | |
| | |/| |_|_|_|/| | | | |
| | | |/| |_|_|/ / / / /
| | | | |/| | | | | | |
| | | | | | | | | | | o cmake@3.30.5/d2nwbxl
| |_|_|_|_|_|_|_|_|_|/|
|/| | |_|_|_|_|_|_|_|/|
| | |/| |_|_|_|_|_|_|/|
| | | |/| |_|_|_|_|_|/|
| | | | |/| |_|_|_|_|/|
| | | | | |/| | | | | |
| | | | | | | | | | | o curl@8.10.1/fpywomo
| |_|_|_|_|_|_|_|_|_|/|
|/| |_|_|_|_|_|_|_|_|/|
| |/| |_|_|_|_|_|_|_|/|
| | |/| |_|_|_|_|_|_|/|
| | | |/| |_|_|_|_|_|/|
| | | | |/| | |_|_|_|/|
| | | | | | |/| | | | |
| o | | | | | | | | | | openssl@3.4.0/5gigqgw
|/| | | | | | | | | | |
| |\| | | | | | | | | |
| |\ \ \ \ \ \ \ \ \ \ \
| | |_|_|_|_|_|_|/ / / /
| |/| | | | | | | | | |
| | |\ \ \ \ \ \ \ \ \ \
| | | |_|/ / / / / / / /
| | |/| | | | | | | | |
| | | |\ \ \ \ \ \ \ \ \
| | | | |_|/ / / / / / /
| | | |/| | | | | | | |
| o | | | | | | | | | | perl@5.40.0/cwpt5ec
|/| | | | | | | | | | |
| |\| | | | | | | | | |
| |\ \ \ \ \ \ \ \ \ \ \
| | |_|_|_|/ / / / / / /
| |/| | | | | | | | | |
| | |\ \ \ \ \ \ \ \ \ \
| | | |\ \ \ \ \ \ \ \ \ \
| | | | |_|/ / / / / / / /
| | | |/| | | | | | | | |
| | | | |\ \ \ \ \ \ \ \ \
| | | | | |_|_|_|_|_|/ / /
| | | | |/| | | | | | | |
o | | | | | | | | | | | | zlib-ng@2.2.1/fhud6vq
|\| | | | | | | | | | | |
|\ \ \ \ \ \ \ \ \ \ \ \ \
| |_|_|_|_|_|/ / / / / / /
|/| | | | | | | | | | | |
| | |/ / / / / / / / / /
| |/| | | | | | | | | |
| | | o | | | | | | | | gdbm@1.23/jj2atvs
| |_|/| | | | | | | | |
|/| |/| | | | | | | | |
| |/|/| | | | | | | | |
| | | o | | | | | | | | readline@8.2/aylebxv
| |_|/| | | | | | | | |
|/| |/| | | | | | | | |
| |/|/| | | | | | | | |
| | | | |_|_|/ / / / /
| | | |/| | | | | | |
| | | o | | | | | | | ncurses@6.5/rvg7j6b
| |_|/| | | | | | | |
|/| |/| | | | | | | |
| |/|/| | | | | | | |
| | | | |_|_|/ / / /
| | | |/| | | | | |
| | | | o | | | | | bzip2@1.0.8/ewqc7cx
| |_|_|/| | | | | |
|/| |_|/| | | | | |
| |/| |/| | | | | |
| | |/| | | | | | |
| | | | | |_|_|/ /
| | | | |/| | | |
| | | | | o | | | berkeley-db@18.1.40/cexlioh
| |_|_|_|/| | | |
|/| |_|_|/| | | |
| |/| |_|/ / / /
| | |/| | | | |
| | | | | o | | ca-certificates-mozilla@2023-05-30/t2brqss
| |_|_|_|/| | |
|/| |_|_|/ / /
| |/| | | | |
| | | | | | o nghttp2@1.63.0/t2qkug7
| |_|_|_|_|/|
|/| |_|_|_|/|
| |/| |_|_|/|
| | |/| |_|/|
| | | |/| |/
| | | | |/|
| | | o | | pkgconf@2.2.0/oplsmxr
| |_|/| | |
|/| |/| | |
| |/|/ / /
| | | o | diffutils@3.10/lljulvx
| |_|/| |
|/| |/| |
| |/|/| |
| | | |/
| | | o libiconv@1.17/bsga3no
| |_|/|
|/| |/|
| |/|/
| | o gmake@4.4.1/srkzfjr
| |/|
|/|/
| o gcc-runtime@11.4.0/hshzy76
|/
o glibc@2.35/a7drdl4

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-ng and Tcl. Now we will go through and uninstall some of those packages that we didn’t really need.

$ spack find -d tcl
-- linux-ubuntu22.04-x86_64_v3 / clang@14.0.0 -------------------
tcl@8.6.12
    glibc@2.35
    gmake@4.4.1
    zlib-ng@2.0.7


-- linux-ubuntu22.04-x86_64_v3 / gcc@11.4.0 ---------------------
tcl@8.6.12
    gcc-runtime@11.4.0
    glibc@2.35
    gmake@4.4.1
    zlib-ng@2.0.7

tcl@8.6.12
    gcc-runtime@11.4.0
    glibc@2.35
    gmake@4.4.1
    zlib-ng@2.2.1

==> 3 installed packages
$ spack find zlib-ng
-- linux-ubuntu22.04-x86_64_v3 / clang@14.0.0 -------------------
zlib-ng@2.0.7  zlib-ng@2.2.1

-- linux-ubuntu22.04-x86_64_v3 / gcc@10.5.0 ---------------------
zlib-ng@2.2.1

-- linux-ubuntu22.04-x86_64_v3 / gcc@11.4.0 ---------------------
zlib-ng@2.0.7  zlib-ng@2.0.7  zlib-ng@2.2.1
==> 6 installed packages

We can uninstall packages by spec using the same syntax as install.

$ spack uninstall -y zlib-ng %gcc@10
==> Successfully uninstalled zlib-ng@2.2.1%gcc@10.5.0+compat+new_strategies+opt+pic+shared build_system=autotools arch=linux-ubuntu22.04-x86_64_v3/aiapvpp
$ spack find -lf zlib-ng
-- linux-ubuntu22.04-x86_64_v3 / clang@14.0.0 -------------------
ju7mdbp zlib-ng@2.0.7%clang  jjykcjt zlib-ng@2.2.1%clang

-- linux-ubuntu22.04-x86_64_v3 / gcc@11.4.0 ---------------------
ocxrmff zlib-ng@2.0.7%gcc  umrbkwv zlib-ng@2.0.7%gcc  cflags=-O3  fhud6vq zlib-ng@2.2.1%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-ng/ju7
==> Refusing to uninstall the following specs
    -- linux-ubuntu22.04-x86_64_v3 / clang@14.0.0 -------------------
    ju7mdbp zlib-ng@2.0.7

==> The following dependents are still installed:
    -- linux-ubuntu22.04-x86_64_v3 / clang@14.0.0 -------------------
    lvfqvn3 tcl@8.6.12

==> Error: There are still dependents.
  use `spack uninstall --dependents` to remove dependents too
  use `spack uninstall --force` to override
$ spack uninstall -y -R zlib-ng/ju7
==> Successfully uninstalled tcl@8.6.12%clang@14.0.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3/lvfqvn3
==> Successfully uninstalled zlib-ng@2.0.7%clang@14.0.0+compat+new_strategies+opt+pic+shared build_system=autotools arch=linux-ubuntu22.04-x86_64_v3/ju7mdbp

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-ubuntu22.04-x86_64_v3 / gcc@11.4.0 ---------------------
    ney6hmm trilinos@16.0.0  63sfm7p trilinos@16.0.0

==> 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 /ney
y
    -- linux-ubuntu22.04-x86_64_v3 / gcc@11.4.0 ---------------------
    ney6hmm trilinos@16.0.0

==> 1 packages will be uninstalled. Do you want to proceed? [y/N] ==> Successfully uninstalled trilinos@16.0.0%gcc@11.4.0~adelus~adios2+amesos+amesos2+anasazi+aztec~basker+belos~boost~chaco~complex~cuda~cuda_constexpr~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~pamgen~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~test~thyra+tpetra~trilinoscouplings~wrapper~x11~zoltan~zoltan2 build_system=cmake build_type=Release cxxstd=17 generator=make gotype=long_long arch=linux-ubuntu22.04-x86_64_v3/ney6hmm

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 cflags="-O3" will return every package which was built with cflags="-O3".

$ spack find ^mpich
-- linux-ubuntu22.04-x86_64_v3 / gcc@11.4.0 ---------------------
hdf5@1.14.5  trilinos@16.0.0
==> 2 installed packages
$ spack find cflags=-O3
-- linux-ubuntu22.04-x86_64_v3 / gcc@11.4.0 ---------------------
zlib-ng@2.0.7
==> 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-ubuntu22.04-x86_64_v3 / clang@14.0.0 -------------------
zlib-ng@2.2.1  /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/clang-14.0.0/zlib-ng-2.2.1-jjykcjtfyoezsckykaklun6a75bzd24o

-- linux-ubuntu22.04-x86_64_v3 / gcc@11.4.0 ---------------------
gmake@4.4.1	 /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gmake-4.4.1-srkzfjru5z55bl5gy24dbjsrvqwg5fom
hdf5@1.14.5	 /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/hdf5-1.14.5-ckoh67fpzb5gn7mti2xzruvlxd424par
hdf5@1.14.5	 /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/hdf5-1.14.5-6ddnwvambfcyhhhs7ehog6gkftrkljnt
hdf5@1.14.5	 /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/hdf5-1.14.5-tgtmflo4s6hqenvkle7urqiz2w6rumph
tcl@8.6.12	 /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/tcl-8.6.12-imrm45j44xmboxdqpj7akq2lwkwza4vo
tcl@8.6.12	 /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/tcl-8.6.12-w4gwr4ezmenbvt7u5zdyjdkfzapsz5lt
trilinos@16.0.0	 /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/trilinos-16.0.0-63sfm7p6vebucsnbmwfnx36hiyal7e3e
zlib-ng@2.0.7	 /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/zlib-ng-2.0.7-ocxrmffc7qnibijshhygluei5qiycvja
zlib-ng@2.0.7	 /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/zlib-ng-2.0.7-umrbkwvnydtpljzy4isoednibe4mwcvz
==> 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 ubuntu22.04-x86_64 -------------------------------------
clang@14.0.0

-- gcc ubuntu22.04-x86_64 ---------------------------------------
gcc@11.4.0  gcc@10.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@12
[+] /usr (external glibc-2.35-a7drdl4tlx4bu3mzhor75pskvd3pdot6)
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gcc-runtime-11.4.0-hshzy762rns57ibvxiyi3qqvc4nehse2
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/bzip2-1.0.8-ewqc7cx44b63asa742p2asywp2k6rfto
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gmake-4.4.1-srkzfjru5z55bl5gy24dbjsrvqwg5fom
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/berkeley-db-18.1.40-cexliohp6aqckxeq4bqy5wrmxzyrfzqc
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/zlib-ng-2.2.1-fhud6vqkh7jaesckalgqg5xxml72in6i
==> Installing autoconf-archive-2023.02.20-6s34ic3cjaoon3tvofqo6dnphpkajulr [7/31]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-autoconf-archive-2023.02.20-6s34ic3cjaoon3tvofqo6dnphpkajulr.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/autoconf-archive-2023.02.20/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-autoconf-archive-2023.02.20-6s34ic3cjaoon3tvofqo6dnphpkajulr.spack
==> Extracting autoconf-archive-2023.02.20-6s34ic3cjaoon3tvofqo6dnphpkajulr from binary cache
==> autoconf-archive: Successfully installed autoconf-archive-2023.02.20-6s34ic3cjaoon3tvofqo6dnphpkajulr
  Search: 0.00s.  Fetch: 0.15s.	 Install: 0.16s.  Extract: 0.14s.  Relocate: 0.01s.  Total: 0.31s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/autoconf-archive-2023.02.20-6s34ic3cjaoon3tvofqo6dnphpkajulr
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/xz-5.4.6-2fvrfr67ahyx5vqg6hyd3dachcl3nl2k
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libiconv-1.17-bsga3novxptycgb4bpv4mldtq3f5m7mj
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/findutils-4.9.0-2sbkhchnzzj4a43ykj5jkwctwjc6b7lm
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/ncurses-6.5-rvg7j6bmergf3is4yoacm5sgsi7l4tvm
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libsigsegv-2.14-ea6qziv7obmf5fq3mxy42rhxptoiwfb6
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/zstd-1.5.6-t7h6imj35ruac562vr7snzvli2h2tzup
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/pigz-2.8-pcwnu2wfae7nfv5isb3kcl7otav2m5zy
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libxml2-2.13.4-wozcmyn2bivorr7geiwavaqeosmwmaow
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/diffutils-3.10-lljulvxt5hdzi6al6xrljyx6i4qyanu4
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libtool-2.4.7-tt3byemiknxgeuaadpxrltepvic7xsms
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/readline-8.2-aylebxvheua4djgtfzzqi2ialcjt5mw7
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/tar-1.34-mmv6i4naeg746pk2xpypdpejwvypmegb
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/m4-1.4.19-qaspjyq5yqcso6yatgyhvm7j632ez7md
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gdbm-1.23-jj2atvsdprz6qvh2n43326zfxv42iw7n
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gettext-0.22.5-bexdfw2vfc64r6u72mqestm6olahfr6e
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/perl-5.40.0-cwpt5ec6gcal6ftcrrxcecnt74fdjfhi
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/autoconf-2.72-vgucajy3lkmspohhktsvmzgzttgzwqnw
==> Installing texinfo-7.1-ljsbwjcqdljqyti3tpb2xx5keapatoul [25/31]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-texinfo-7.1-ljsbwjcqdljqyti3tpb2xx5keapatoul.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/texinfo-7.1/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-texinfo-7.1-ljsbwjcqdljqyti3tpb2xx5keapatoul.spack
==> Extracting texinfo-7.1-ljsbwjcqdljqyti3tpb2xx5keapatoul from binary cache
==> texinfo: Successfully installed texinfo-7.1-ljsbwjcqdljqyti3tpb2xx5keapatoul
  Search: 0.00s.  Fetch: 0.01s.	 Install: 0.27s.  Extract: 0.21s.  Relocate: 0.05s.  Total: 0.29s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/texinfo-7.1-ljsbwjcqdljqyti3tpb2xx5keapatoul
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/automake-1.16.5-awgfaon3dsdj54pighglmrv7gnex7jko
==> Installing gmp-6.3.0-5webgyazi3rpemdmmhbip4glviaeet2l [27/31]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-gmp-6.3.0-5webgyazi3rpemdmmhbip4glviaeet2l.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gmp-6.3.0/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-gmp-6.3.0-5webgyazi3rpemdmmhbip4glviaeet2l.spack
==> Extracting gmp-6.3.0-5webgyazi3rpemdmmhbip4glviaeet2l from binary cache
==> gmp: Successfully installed gmp-6.3.0-5webgyazi3rpemdmmhbip4glviaeet2l
  Search: 0.00s.  Fetch: 0.01s.	 Install: 0.07s.  Extract: 0.05s.  Relocate: 0.01s.  Total: 0.08s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gmp-6.3.0-5webgyazi3rpemdmmhbip4glviaeet2l
==> Installing mpfr-4.2.1-mdfsfjykvyaknc5yzul4l25aip3rugoe [28/31]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-mpfr-4.2.1-mdfsfjykvyaknc5yzul4l25aip3rugoe.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/mpfr-4.2.1/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-mpfr-4.2.1-mdfsfjykvyaknc5yzul4l25aip3rugoe.spack
==> Extracting mpfr-4.2.1-mdfsfjykvyaknc5yzul4l25aip3rugoe from binary cache
==> mpfr: Successfully installed mpfr-4.2.1-mdfsfjykvyaknc5yzul4l25aip3rugoe
  Search: 0.00s.  Fetch: 0.01s.	 Install: 0.15s.  Extract: 0.12s.  Relocate: 0.01s.  Total: 0.16s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/mpfr-4.2.1-mdfsfjykvyaknc5yzul4l25aip3rugoe
==> Installing gawk-5.3.1-x6mwj3lnzliwyh2vdqgibweodb3xdisw [29/31]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-gawk-5.3.1-x6mwj3lnzliwyh2vdqgibweodb3xdisw.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gawk-5.3.1/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-gawk-5.3.1-x6mwj3lnzliwyh2vdqgibweodb3xdisw.spack
==> Extracting gawk-5.3.1-x6mwj3lnzliwyh2vdqgibweodb3xdisw from binary cache
==> gawk: Successfully installed gawk-5.3.1-x6mwj3lnzliwyh2vdqgibweodb3xdisw
  Search: 0.00s.  Fetch: 0.01s.	 Install: 0.15s.  Extract: 0.10s.  Relocate: 0.03s.  Total: 0.15s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gawk-5.3.1-x6mwj3lnzliwyh2vdqgibweodb3xdisw
==> Installing mpc-1.3.1-qoauga4bfx37v3lynpeoi4rcy2nw2ek5 [30/31]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-mpc-1.3.1-qoauga4bfx37v3lynpeoi4rcy2nw2ek5.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/mpc-1.3.1/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-mpc-1.3.1-qoauga4bfx37v3lynpeoi4rcy2nw2ek5.spack
==> Extracting mpc-1.3.1-qoauga4bfx37v3lynpeoi4rcy2nw2ek5 from binary cache
==> mpc: Successfully installed mpc-1.3.1-qoauga4bfx37v3lynpeoi4rcy2nw2ek5
  Search: 0.00s.  Fetch: 0.01s.	 Install: 0.06s.  Extract: 0.03s.  Relocate: 0.02s.  Total: 0.07s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/mpc-1.3.1-qoauga4bfx37v3lynpeoi4rcy2nw2ek5
==> Installing gcc-12.3.0-jjgfqpdmihb2cq5ca7txia5oshruq56q [31/31]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-gcc-12.3.0-jjgfqpdmihb2cq5ca7txia5oshruq56q.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gcc-12.3.0/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-gcc-12.3.0-jjgfqpdmihb2cq5ca7txia5oshruq56q.spack
==> Extracting gcc-12.3.0-jjgfqpdmihb2cq5ca7txia5oshruq56q from binary cache
==> Wrote new spec file to /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gcc-12.3.0-jjgfqpdmihb2cq5ca7txia5oshruq56q/lib/gcc/x86_64-pc-linux-gnu/12.3.0/specs
==> gcc: Successfully installed gcc-12.3.0-jjgfqpdmihb2cq5ca7txia5oshruq56q
  Search: 0.00s.  Fetch: 0.40s.	 Install: 21.11s.  Extract: 19.73s.  Relocate: 1.34s.  Total: 21.52s
[+] /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gcc-12.3.0-jjgfqpdmihb2cq5ca7txia5oshruq56q
$ spack find -p gcc
-- linux-ubuntu22.04-x86_64_v3 / gcc@11.4.0 ---------------------
gcc@12.3.0  /home/spack5/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gcc-12.3.0-jjgfqpdmihb2cq5ca7txia5oshruq56q
==> 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@12.3.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@12)"
==> Added 1 new compiler to /home/spack5/.spack/linux/compilers.yaml
    gcc@12.3.0
==> Compilers are defined in the following files:
    /home/spack5/.spack/linux/compilers.yaml

We can also remove compilers from our configuration using spack compiler remove <compiler_spec>

$ spack compiler remove gcc@12
==> gcc@12.3.0 has been removed