Tutorial setup
If you have not done the prior sections, you’ll need to start the docker image:
docker run -it ghcr.io/spack/tutorial:hpcic24
and then set Spack up like this:
git clone --depth=100 --branch=releases/v0.22 https://github.com/spack/spack
. spack/share/spack/setup-env.sh
spack tutorial -y
spack bootstrap now
spack compiler find
See the Basic Installation Tutorial for full details on setup. For more
help, join us in the #tutorial
channel on Slack – get an
invitation at slack.spack.io
Environments Tutorial
We’ve covered how to install, remove, and list packages with Spack using the commands:
spack install to install packages;
spack uninstall to remove them; and
spack find to look at and query what is installed.
This section of the tutorial introduces Spack Environments, which allow you
to work with independent groups of packages separately, in a reproducible way.
In some ways, Spack environments are similar to virtual environments in other
systems (e.g., Python venv),
but they are based around file formats (spack.yaml
and spack.lock
) that can
be shared easily and re-used by others across systems.
Administering properly configured software involving lots of packages
and/or varying configuration requirements (e.g., different implementations
of mpi
) for multiple projects and efforts can be overwhelming. Spack
environments allow you to readily:
establish standard software requirements for your project(s);
set up run environments for users;
support your usual development environment(s);
set up packages for CI/CD;
reproduce builds (approximately or exactly) on other machines; and
much more.
This tutorial introduces the basics of creating and using environments, then explains how to expand, configure, and build software in them. We will start with the command line interface, then cover editing key environment file directly. We will describe the difference between Spack-managed and independent environments, then finish with a section on reproducible builds.
Environment Basics
Let’s look at the output of spack find
at this point in the tutorial.
$ spack find
-- linux-ubuntu22.04-x86_64_v3 / gcc@11.4.0 ---------------------
gcc-runtime@11.4.0 glibc@2.35 gmake@4.3 gmake@4.4.1
==> 4 installed packages
This is a complete, but cluttered list of the installed packages and
their dependencies. It contains packages built with both openmpi
and mpich
, as well as multiple variants of other packages, like
hdf5
and zlib-ng
. The query mechanism we learned about with
spack find
can help, but it would be nice if we could start from
a clean slate without losing what we’ve already installed.
Creating and activating environments
The spack env
command can help. Let’s create a new environment
called myproject
:
$ spack env create myproject
==> Created environment myproject in: /home/spack/spack/var/spack/environments/myproject
==> Activate with: spack env activate myproject
An environment is like a virtualized Spack instance that you can use to aggregate package installations for a project or other purpose. It has an associated view, which is a single prefix where all packages from the environment are linked.
You can see the environments we’ve created so far using the spack env
list
command:
$ spack env list
==> 1 environments
myproject
Now let’s activate our environment. You can use spack env activate
command:
$ spack env activate myproject
You can also use the spacktivate
alias for short.
Note
If you use the -p
option for spack env activate
, Spack
will prepend the environment name to the prompt. This is a handy
way to be reminded if and which environment you are in.
Once you activate an environment, spack find
only shows what is
in the current environment. We just created this environment, so it
does not contain any installed packages.
$ spack find
==> In environment myproject
==> No root specs
==> 0 installed packages
The output from spack find
is now slightly different. It tells
you that you’re in the myproject
environment, so there is no need
to panic when you see that none of the previously installed packages
are available. It also states that there are no root specs. We’ll
get back to what that means later.
If you only want to check what environment you are in, you can use
spack env status
:
$ spack env status
==> In environment myproject
If you want to leave this environment, you can use spack env deactivate
or the despacktivate
alias for short.
After deactivating, we can see everything installed in this Spack instance:
$ despacktivate # short alias for 'spack env deactivate'
$ spack env status
==> No active environment
$ spack find
-- linux-ubuntu22.04-x86_64_v3 / gcc@11.4.0 ---------------------
gcc-runtime@11.4.0 glibc@2.35 gmake@4.3 gmake@4.4.1
==> 4 installed packages
Notice that we are no longer in an environment and all our packages are still installed.
Installing packages
Now that we understand how creation and activation work, let’s go
back to myproject
and install a couple of packages, specifically,
tcl
and trilinos
.
Try the usual install command first:
$ spack env activate myproject
$ spack install tcl
==> Error: Cannot install 'tcl' because no matching specs are in the current environment. You can add specs to the environment with 'spack add tcl', or as part of the install command with 'spack install --add tcl'
Environments are special in that you must add specs to them before installing.
spack add
allows us to do queue up several specs to be installed together.
Let’s try it:
$ spack add tcl
==> Adding tcl to environment myproject
$ spack add trilinos
==> Adding trilinos to environment myproject
$ spack find
==> In environment myproject
==> 2 root specs
- tcl - trilinos
==> 0 installed packages
Now, tcl
and trilinos
have been registered as root specs in this
environment. That is because we explicitly asked for them to
be installed, so they are the roots of the combined graph
of all packages we’ll install.
Now, let’s install:
$ spack install
==> Concretized trilinos
- is6uzcx trilinos@15.1.1%gcc@11.4.0~adelus~adios2+amesos+amesos2+anasazi+aztec~basker+belos~boost~chaco~complex~cuda~cuda_rdc~debug~dtk+epetra+epetraext~epetraextbtf~epetraextexperimental~epetraextgraphreorderings~exodus+explicit_template_instantiation~float+fortran~gtest~hdf5~hypre+ifpack+ifpack2~intrepid~intrepid2~ipo~isorropia+kokkos~mesquite~minitensor+ml+mpi+muelu~mumps~nox~openmp~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
- gnvkrt4 ^cmake@3.27.9%gcc@11.4.0~doc+ncurses+ownlibs build_system=generic build_type=Release arch=linux-ubuntu22.04-x86_64_v3
- bawzanq ^curl@8.7.1%gcc@11.4.0~gssapi~ldap~libidn2~librtmp~libssh~libssh2+nghttp2 build_system=autotools libs=shared,static tls=openssl arch=linux-ubuntu22.04-x86_64_v3
- l4jcye6 ^nghttp2@1.57.0%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
- njmgt4r ^diffutils@3.10%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
- 7zs2o3j ^openssl@3.3.0%gcc@11.4.0~docs+shared build_system=generic certs=mozilla arch=linux-ubuntu22.04-x86_64_v3
- yw5x67u ^ca-certificates-mozilla@2023-05-30%gcc@11.4.0 build_system=generic arch=linux-ubuntu22.04-x86_64_v3
- gk4xs2i ^ncurses@6.5%gcc@11.4.0~symlinks+termlib abi=none build_system=autotools patches=7a351bc arch=linux-ubuntu22.04-x86_64_v3
- xqtp62n ^zlib-ng@2.1.6%gcc@11.4.0+compat+new_strategies+opt+pic+shared build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] f47qm6q ^gcc-runtime@11.4.0%gcc@11.4.0 build_system=generic arch=linux-ubuntu22.04-x86_64_v3
[e] a7drdl4 ^glibc@2.35%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] qfrotcc ^gmake@4.4.1%gcc@11.4.0~guile build_system=generic arch=linux-ubuntu22.04-x86_64_v3
- qeaglvh ^hwloc@2.9.1%gcc@11.4.0~cairo~cuda~gl~libudev+libxml2~netloc~nvml~oneapi-level-zero~opencl+pci~rocm build_system=autotools libs=shared,static arch=linux-ubuntu22.04-x86_64_v3
- 3i3i255 ^libpciaccess@0.17%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
- egkyddp ^util-macros@1.19.3%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
- s3vgala ^libxml2@2.10.3%gcc@11.4.0+pic~python+shared build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
- bj46qor ^libiconv@1.17%gcc@11.4.0 build_system=autotools libs=shared,static arch=linux-ubuntu22.04-x86_64_v3
- syttnnt ^xz@5.4.6%gcc@11.4.0~pic build_system=autotools libs=shared,static arch=linux-ubuntu22.04-x86_64_v3
- h3x3l7s ^pkgconf@2.2.0%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
- iuiymnm ^kokkos@4.2.01%gcc@11.4.0~aggressive_vectorization~compiler_warnings~cuda~debug~debug_bounds_check~debug_dualview_modify_check~deprecated_code~examples~hpx~hpx_async_dispatch~hwloc~ipo~memkind~numactl~openmp~openmptarget~pic~rocm+serial+shared~sycl~tests~threads~tuning~wrapper build_system=cmake build_type=Release cxxstd=17 generator=make intel_gpu_arch=none arch=linux-ubuntu22.04-x86_64_v3
- 7oujjun ^openblas@0.3.26%gcc@11.4.0~bignuma~consistent_fpcsr+dynamic_dispatch+fortran~ilp64+locking+pic+shared build_system=makefile symbol_suffix=none threads=none arch=linux-ubuntu22.04-x86_64_v3
- okr2qfj ^perl@5.38.0%gcc@11.4.0+cpanm+opcode+open+shared+threads build_system=generic patches=714e4d1 arch=linux-ubuntu22.04-x86_64_v3
- br27jq6 ^berkeley-db@18.1.40%gcc@11.4.0+cxx~docs+stl build_system=autotools patches=26090f4,b231fcc arch=linux-ubuntu22.04-x86_64_v3
- w3nrdq4 ^bzip2@1.0.8%gcc@11.4.0~debug~pic+shared build_system=generic arch=linux-ubuntu22.04-x86_64_v3
- ohbrdtp ^gdbm@1.23%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
- cb6x34k ^readline@8.2%gcc@11.4.0 build_system=autotools patches=bbf97f1 arch=linux-ubuntu22.04-x86_64_v3
- 4a67ev2 ^openmpi@5.0.3%gcc@11.4.0~atomics~cuda~gpfs~internal-hwloc~internal-libevent~internal-pmix~java~legacylaunchers~lustre~memchecker~openshmem~orterunprefix~romio+rsh~static+vt+wrapper-rpath build_system=autotools fabrics=none romio-filesystem=none schedulers=none arch=linux-ubuntu22.04-x86_64_v3
- vcb35sx ^autoconf@2.72%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
- sd3ytde ^m4@1.4.19%gcc@11.4.0+sigsegv build_system=autotools patches=9dc5fbd,bfdffa7 arch=linux-ubuntu22.04-x86_64_v3
- jwy3fyz ^libsigsegv@2.14%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
- 6liamd6 ^automake@1.16.5%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
- qmgnv2n ^libevent@2.1.12%gcc@11.4.0+openssl build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
- uwrcuds ^libtool@2.4.7%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
- v4yzc2w ^findutils@4.9.0%gcc@11.4.0 build_system=autotools patches=440b954 arch=linux-ubuntu22.04-x86_64_v3
- g46wb44 ^numactl@2.0.14%gcc@11.4.0 build_system=autotools patches=4e1d78c,62fc8a8,ff37630 arch=linux-ubuntu22.04-x86_64_v3
- 3uvvdf2 ^openssh@9.7p1%gcc@11.4.0+gssapi build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
- w3lwbhd ^krb5@1.20.1%gcc@11.4.0+shared build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
- b5e3naw ^bison@3.8.2%gcc@11.4.0~color build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
- omjznij ^gettext@0.22.5%gcc@11.4.0+bzip2+curses+git~libunistring+libxml2+pic+shared+tar+xz build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
- bk5hidp ^tar@1.34%gcc@11.4.0 build_system=autotools zip=pigz arch=linux-ubuntu22.04-x86_64_v3
- gk55zt7 ^pigz@2.8%gcc@11.4.0 build_system=makefile arch=linux-ubuntu22.04-x86_64_v3
- ew3aaos ^zstd@1.5.6%gcc@11.4.0+programs build_system=makefile compression=none libs=shared,static arch=linux-ubuntu22.04-x86_64_v3
- swglgxe ^libedit@3.1-20230828%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
- ue2bwi7 ^libxcrypt@4.4.35%gcc@11.4.0~obsolete_api build_system=autotools patches=4885da3 arch=linux-ubuntu22.04-x86_64_v3
- 4o6gxsy ^pmix@5.0.1%gcc@11.4.0~docs+pmi_backwards_compatibility~python~restful build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
==> Concretized tcl
- dpakck4 tcl@8.6.12%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] f47qm6q ^gcc-runtime@11.4.0%gcc@11.4.0 build_system=generic arch=linux-ubuntu22.04-x86_64_v3
[e] a7drdl4 ^glibc@2.35%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] qfrotcc ^gmake@4.4.1%gcc@11.4.0~guile build_system=generic arch=linux-ubuntu22.04-x86_64_v3
- xqtp62n ^zlib-ng@2.1.6%gcc@11.4.0+compat+new_strategies+opt+pic+shared build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] /usr (external glibc-2.35-a7drdl4tlx4bu3mzhor75pskvd3pdot6)
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gcc-runtime-11.4.0-f47qm6qeplqyahc4zhfpfdnf5mo6gxvd
==> Installing ca-certificates-mozilla-2023-05-30-yw5x67uxvt6sapin6ft4cxfnwljusmbf [3/46]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-ca-certificates-mozilla-2023-05-30-yw5x67uxvt6sapin6ft4cxfnwljusmbf.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-yw5x67uxvt6sapin6ft4cxfnwljusmbf.spack
==> Extracting ca-certificates-mozilla-2023-05-30-yw5x67uxvt6sapin6ft4cxfnwljusmbf from binary cache
==> ca-certificates-mozilla: Successfully installed ca-certificates-mozilla-2023-05-30-yw5x67uxvt6sapin6ft4cxfnwljusmbf
Search: 0.00s. Fetch: 0.12s. Install: 0.05s. Extract: 0.03s. Relocate: 0.01s. Total: 0.16s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/ca-certificates-mozilla-2023-05-30-yw5x67uxvt6sapin6ft4cxfnwljusmbf
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gmake-4.4.1-qfrotccvbyovembcoto3jajc3vuvcejo
==> Installing zlib-ng-2.1.6-xqtp62nft6pt5slbdljucwnkl5fxd6x4 [5/46]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-zlib-ng-2.1.6-xqtp62nft6pt5slbdljucwnkl5fxd6x4.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/zlib-ng-2.1.6/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-zlib-ng-2.1.6-xqtp62nft6pt5slbdljucwnkl5fxd6x4.spack
==> Extracting zlib-ng-2.1.6-xqtp62nft6pt5slbdljucwnkl5fxd6x4 from binary cache
==> zlib-ng: Successfully installed zlib-ng-2.1.6-xqtp62nft6pt5slbdljucwnkl5fxd6x4
Search: 0.00s. Fetch: 0.01s. Install: 0.02s. Extract: 0.01s. Relocate: 0.01s. Total: 0.03s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/zlib-ng-2.1.6-xqtp62nft6pt5slbdljucwnkl5fxd6x4
==> Installing util-macros-1.19.3-egkyddpgsgnwgmdzd4tlmqxnh3o3lhrq [6/46]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-util-macros-1.19.3-egkyddpgsgnwgmdzd4tlmqxnh3o3lhrq.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/util-macros-1.19.3/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-util-macros-1.19.3-egkyddpgsgnwgmdzd4tlmqxnh3o3lhrq.spack
==> Extracting util-macros-1.19.3-egkyddpgsgnwgmdzd4tlmqxnh3o3lhrq from binary cache
==> util-macros: Successfully installed util-macros-1.19.3-egkyddpgsgnwgmdzd4tlmqxnh3o3lhrq
Search: 0.00s. Fetch: 0.01s. Install: 0.02s. Extract: 0.01s. Relocate: 0.01s. Total: 0.02s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/util-macros-1.19.3-egkyddpgsgnwgmdzd4tlmqxnh3o3lhrq
==> Installing berkeley-db-18.1.40-br27jq6mkoumsbtdldgzcm3lw5zqjvel [7/46]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-berkeley-db-18.1.40-br27jq6mkoumsbtdldgzcm3lw5zqjvel.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-br27jq6mkoumsbtdldgzcm3lw5zqjvel.spack
==> Extracting berkeley-db-18.1.40-br27jq6mkoumsbtdldgzcm3lw5zqjvel from binary cache
==> berkeley-db: Successfully installed berkeley-db-18.1.40-br27jq6mkoumsbtdldgzcm3lw5zqjvel
Search: 0.00s. Fetch: 0.01s. Install: 0.11s. Extract: 0.09s. Relocate: 0.02s. Total: 0.12s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/berkeley-db-18.1.40-br27jq6mkoumsbtdldgzcm3lw5zqjvel
==> Installing pkgconf-2.2.0-h3x3l7sed4l2efuskhaldi6ilmkoyeaa [8/46]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-pkgconf-2.2.0-h3x3l7sed4l2efuskhaldi6ilmkoyeaa.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-h3x3l7sed4l2efuskhaldi6ilmkoyeaa.spack
==> Extracting pkgconf-2.2.0-h3x3l7sed4l2efuskhaldi6ilmkoyeaa from binary cache
==> pkgconf: Successfully installed pkgconf-2.2.0-h3x3l7sed4l2efuskhaldi6ilmkoyeaa
Search: 0.00s. Fetch: 0.01s. Install: 0.03s. Extract: 0.02s. Relocate: 0.01s. Total: 0.04s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/pkgconf-2.2.0-h3x3l7sed4l2efuskhaldi6ilmkoyeaa
==> Installing libiconv-1.17-bj46qorfdrbz67euv5g4s7isuniqjjpl [9/46]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-libiconv-1.17-bj46qorfdrbz67euv5g4s7isuniqjjpl.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-bj46qorfdrbz67euv5g4s7isuniqjjpl.spack
==> Extracting libiconv-1.17-bj46qorfdrbz67euv5g4s7isuniqjjpl from binary cache
==> libiconv: Successfully installed libiconv-1.17-bj46qorfdrbz67euv5g4s7isuniqjjpl
Search: 0.00s. Fetch: 0.01s. Install: 0.08s. Extract: 0.06s. Relocate: 0.01s. Total: 0.09s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libiconv-1.17-bj46qorfdrbz67euv5g4s7isuniqjjpl
==> Installing xz-5.4.6-syttnntihi6n463mupmgl5e7kp5izxkz [10/46]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-xz-5.4.6-syttnntihi6n463mupmgl5e7kp5izxkz.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-syttnntihi6n463mupmgl5e7kp5izxkz.spack
==> Extracting xz-5.4.6-syttnntihi6n463mupmgl5e7kp5izxkz from binary cache
==> xz: Successfully installed xz-5.4.6-syttnntihi6n463mupmgl5e7kp5izxkz
Search: 0.00s. Fetch: 0.01s. Install: 0.12s. Extract: 0.10s. Relocate: 0.01s. Total: 0.13s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/xz-5.4.6-syttnntihi6n463mupmgl5e7kp5izxkz
==> Installing findutils-4.9.0-v4yzc2wwg33pu64bs64rfhu6k4nb3r33 [11/46]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-findutils-4.9.0-v4yzc2wwg33pu64bs64rfhu6k4nb3r33.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-v4yzc2wwg33pu64bs64rfhu6k4nb3r33.spack
==> Extracting findutils-4.9.0-v4yzc2wwg33pu64bs64rfhu6k4nb3r33 from binary cache
==> findutils: Successfully installed findutils-4.9.0-v4yzc2wwg33pu64bs64rfhu6k4nb3r33
Search: 0.00s. Fetch: 0.01s. Install: 0.07s. Extract: 0.06s. Relocate: 0.01s. Total: 0.08s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/findutils-4.9.0-v4yzc2wwg33pu64bs64rfhu6k4nb3r33
==> Installing libsigsegv-2.14-jwy3fyzf5vk74lvkdpa6uf4rqlvfz7my [12/46]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-libsigsegv-2.14-jwy3fyzf5vk74lvkdpa6uf4rqlvfz7my.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-jwy3fyzf5vk74lvkdpa6uf4rqlvfz7my.spack
==> Extracting libsigsegv-2.14-jwy3fyzf5vk74lvkdpa6uf4rqlvfz7my from binary cache
==> libsigsegv: Successfully installed libsigsegv-2.14-jwy3fyzf5vk74lvkdpa6uf4rqlvfz7my
Search: 0.00s. Fetch: 0.01s. Install: 0.02s. Extract: 0.01s. Relocate: 0.01s. Total: 0.03s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libsigsegv-2.14-jwy3fyzf5vk74lvkdpa6uf4rqlvfz7my
==> Installing zstd-1.5.6-ew3aaosbmf3ts2ylqgi4c6enfmf3m5dr [13/46]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-zstd-1.5.6-ew3aaosbmf3ts2ylqgi4c6enfmf3m5dr.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-ew3aaosbmf3ts2ylqgi4c6enfmf3m5dr.spack
==> Extracting zstd-1.5.6-ew3aaosbmf3ts2ylqgi4c6enfmf3m5dr from binary cache
==> zstd: Successfully installed zstd-1.5.6-ew3aaosbmf3ts2ylqgi4c6enfmf3m5dr
Search: 0.00s. Fetch: 0.01s. Install: 0.06s. Extract: 0.04s. Relocate: 0.01s. Total: 0.06s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/zstd-1.5.6-ew3aaosbmf3ts2ylqgi4c6enfmf3m5dr
==> Installing tcl-8.6.12-dpakck4vt2fme3lnoqyqmmzttko5j3cu [14/46]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-tcl-8.6.12-dpakck4vt2fme3lnoqyqmmzttko5j3cu.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-dpakck4vt2fme3lnoqyqmmzttko5j3cu.spack
==> Extracting tcl-8.6.12-dpakck4vt2fme3lnoqyqmmzttko5j3cu from binary cache
==> tcl: Successfully installed tcl-8.6.12-dpakck4vt2fme3lnoqyqmmzttko5j3cu
Search: 0.00s. Fetch: 0.02s. Install: 1.19s. Extract: 1.12s. Relocate: 0.07s. Total: 1.21s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/tcl-8.6.12-dpakck4vt2fme3lnoqyqmmzttko5j3cu
==> Installing pigz-2.8-gk55zt73c5ekv3iogqn4lo4r66tuzv5z [15/46]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-pigz-2.8-gk55zt73c5ekv3iogqn4lo4r66tuzv5z.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-gk55zt73c5ekv3iogqn4lo4r66tuzv5z.spack
==> Extracting pigz-2.8-gk55zt73c5ekv3iogqn4lo4r66tuzv5z from binary cache
==> pigz: Successfully installed pigz-2.8-gk55zt73c5ekv3iogqn4lo4r66tuzv5z
Search: 0.00s. Fetch: 0.01s. Install: 0.02s. Extract: 0.01s. Relocate: 0.01s. Total: 0.03s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/pigz-2.8-gk55zt73c5ekv3iogqn4lo4r66tuzv5z
==> Installing ncurses-6.5-gk4xs2idegfiwoyaikamyhxkjrruxtxa [16/46]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-ncurses-6.5-gk4xs2idegfiwoyaikamyhxkjrruxtxa.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-gk4xs2idegfiwoyaikamyhxkjrruxtxa.spack
==> Extracting ncurses-6.5-gk4xs2idegfiwoyaikamyhxkjrruxtxa from binary cache
==> ncurses: Successfully installed ncurses-6.5-gk4xs2idegfiwoyaikamyhxkjrruxtxa
Search: 0.00s. Fetch: 0.01s. Install: 0.67s. Extract: 0.65s. Relocate: 0.02s. Total: 0.69s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/ncurses-6.5-gk4xs2idegfiwoyaikamyhxkjrruxtxa
==> Installing diffutils-3.10-njmgt4r2e27zlf6fcmjk6qb5ulnixm35 [17/46]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-diffutils-3.10-njmgt4r2e27zlf6fcmjk6qb5ulnixm35.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-njmgt4r2e27zlf6fcmjk6qb5ulnixm35.spack
==> Extracting diffutils-3.10-njmgt4r2e27zlf6fcmjk6qb5ulnixm35 from binary cache
==> diffutils: Successfully installed diffutils-3.10-njmgt4r2e27zlf6fcmjk6qb5ulnixm35
Search: 0.00s. Fetch: 0.01s. Install: 0.06s. Extract: 0.05s. Relocate: 0.01s. Total: 0.07s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/diffutils-3.10-njmgt4r2e27zlf6fcmjk6qb5ulnixm35
==> Installing libxml2-2.10.3-s3vgaladuiim674rvdylwer4ktlfa2y4 [18/46]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-libxml2-2.10.3-s3vgaladuiim674rvdylwer4ktlfa2y4.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libxml2-2.10.3/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-libxml2-2.10.3-s3vgaladuiim674rvdylwer4ktlfa2y4.spack
==> Extracting libxml2-2.10.3-s3vgaladuiim674rvdylwer4ktlfa2y4 from binary cache
==> libxml2: Successfully installed libxml2-2.10.3-s3vgaladuiim674rvdylwer4ktlfa2y4
Search: 0.00s. Fetch: 0.01s. Install: 0.13s. Extract: 0.11s. Relocate: 0.02s. Total: 0.14s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libxml2-2.10.3-s3vgaladuiim674rvdylwer4ktlfa2y4
==> Installing readline-8.2-cb6x34ku73pjh3f4t7rmpthnxuumw25x [19/46]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-readline-8.2-cb6x34ku73pjh3f4t7rmpthnxuumw25x.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-cb6x34ku73pjh3f4t7rmpthnxuumw25x.spack
==> Extracting readline-8.2-cb6x34ku73pjh3f4t7rmpthnxuumw25x from binary cache
==> readline: Successfully installed readline-8.2-cb6x34ku73pjh3f4t7rmpthnxuumw25x
Search: 0.00s. Fetch: 0.01s. Install: 0.06s. Extract: 0.05s. Relocate: 0.01s. Total: 0.07s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/readline-8.2-cb6x34ku73pjh3f4t7rmpthnxuumw25x
==> Installing libedit-3.1-20230828-swglgxeckeajkjp4b7d66fbsyn6hjsdh [20/46]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-libedit-3.1-20230828-swglgxeckeajkjp4b7d66fbsyn6hjsdh.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libedit-3.1-20230828/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-libedit-3.1-20230828-swglgxeckeajkjp4b7d66fbsyn6hjsdh.spack
==> Extracting libedit-3.1-20230828-swglgxeckeajkjp4b7d66fbsyn6hjsdh from binary cache
==> libedit: Successfully installed libedit-3.1-20230828-swglgxeckeajkjp4b7d66fbsyn6hjsdh
Search: 0.00s. Fetch: 0.01s. Install: 0.05s. Extract: 0.04s. Relocate: 0.01s. Total: 0.06s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libedit-3.1-20230828-swglgxeckeajkjp4b7d66fbsyn6hjsdh
==> Installing m4-1.4.19-sd3ytdel5rzykkjq2m3cwi4jccl5xwi7 [21/46]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-m4-1.4.19-sd3ytdel5rzykkjq2m3cwi4jccl5xwi7.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-sd3ytdel5rzykkjq2m3cwi4jccl5xwi7.spack
==> Extracting m4-1.4.19-sd3ytdel5rzykkjq2m3cwi4jccl5xwi7 from binary cache
==> m4: Successfully installed m4-1.4.19-sd3ytdel5rzykkjq2m3cwi4jccl5xwi7
Search: 0.00s. Fetch: 0.01s. Install: 0.05s. Extract: 0.04s. Relocate: 0.01s. Total: 0.06s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/m4-1.4.19-sd3ytdel5rzykkjq2m3cwi4jccl5xwi7
==> Installing nghttp2-1.57.0-l4jcye63aj5ju2xanoilysqe7lacl5yl [22/46]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-nghttp2-1.57.0-l4jcye63aj5ju2xanoilysqe7lacl5yl.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/nghttp2-1.57.0/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-nghttp2-1.57.0-l4jcye63aj5ju2xanoilysqe7lacl5yl.spack
==> Extracting nghttp2-1.57.0-l4jcye63aj5ju2xanoilysqe7lacl5yl from binary cache
==> nghttp2: Successfully installed nghttp2-1.57.0-l4jcye63aj5ju2xanoilysqe7lacl5yl
Search: 0.00s. Fetch: 0.01s. Install: 0.05s. Extract: 0.03s. Relocate: 0.01s. Total: 0.05s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/nghttp2-1.57.0-l4jcye63aj5ju2xanoilysqe7lacl5yl
==> Installing bzip2-1.0.8-w3nrdq4zswhvsa6oajnk42ozoswkhb33 [23/46]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-bzip2-1.0.8-w3nrdq4zswhvsa6oajnk42ozoswkhb33.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-w3nrdq4zswhvsa6oajnk42ozoswkhb33.spack
==> Extracting bzip2-1.0.8-w3nrdq4zswhvsa6oajnk42ozoswkhb33 from binary cache
==> bzip2: Successfully installed bzip2-1.0.8-w3nrdq4zswhvsa6oajnk42ozoswkhb33
Search: 0.00s. Fetch: 0.01s. Install: 0.03s. Extract: 0.02s. Relocate: 0.01s. Total: 0.04s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/bzip2-1.0.8-w3nrdq4zswhvsa6oajnk42ozoswkhb33
==> Installing gdbm-1.23-ohbrdtphnhbycgd6p3btrxzjbtkwiqn6 [24/46]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-gdbm-1.23-ohbrdtphnhbycgd6p3btrxzjbtkwiqn6.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-ohbrdtphnhbycgd6p3btrxzjbtkwiqn6.spack
==> Extracting gdbm-1.23-ohbrdtphnhbycgd6p3btrxzjbtkwiqn6 from binary cache
==> gdbm: Successfully installed gdbm-1.23-ohbrdtphnhbycgd6p3btrxzjbtkwiqn6
Search: 0.00s. Fetch: 0.01s. Install: 0.06s. Extract: 0.04s. Relocate: 0.01s. Total: 0.06s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gdbm-1.23-ohbrdtphnhbycgd6p3btrxzjbtkwiqn6
==> Installing libtool-2.4.7-uwrcudssgr763a2del5tomr6vv2xkv22 [25/46]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-libtool-2.4.7-uwrcudssgr763a2del5tomr6vv2xkv22.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-uwrcudssgr763a2del5tomr6vv2xkv22.spack
==> Extracting libtool-2.4.7-uwrcudssgr763a2del5tomr6vv2xkv22 from binary cache
==> libtool: Successfully installed libtool-2.4.7-uwrcudssgr763a2del5tomr6vv2xkv22
Search: 0.00s. Fetch: 0.01s. Install: 0.06s. Extract: 0.04s. Relocate: 0.02s. Total: 0.07s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libtool-2.4.7-uwrcudssgr763a2del5tomr6vv2xkv22
==> Installing bison-3.8.2-b5e3nawtvrzjtuvystcgz6wbxqhuhx36 [26/46]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-bison-3.8.2-b5e3nawtvrzjtuvystcgz6wbxqhuhx36.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-b5e3nawtvrzjtuvystcgz6wbxqhuhx36.spack
==> Extracting bison-3.8.2-b5e3nawtvrzjtuvystcgz6wbxqhuhx36 from binary cache
==> bison: Successfully installed bison-3.8.2-b5e3nawtvrzjtuvystcgz6wbxqhuhx36
Search: 0.00s. Fetch: 0.01s. Install: 0.12s. Extract: 0.10s. Relocate: 0.01s. Total: 0.13s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/bison-3.8.2-b5e3nawtvrzjtuvystcgz6wbxqhuhx36
==> Installing tar-1.34-bk5hidphc2hnjtnv67xxv2azwjl26txp [27/46]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-tar-1.34-bk5hidphc2hnjtnv67xxv2azwjl26txp.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-bk5hidphc2hnjtnv67xxv2azwjl26txp.spack
==> Extracting tar-1.34-bk5hidphc2hnjtnv67xxv2azwjl26txp from binary cache
==> tar: Successfully installed tar-1.34-bk5hidphc2hnjtnv67xxv2azwjl26txp
Search: 0.00s. Fetch: 0.01s. Install: 0.10s. Extract: 0.08s. Relocate: 0.02s. Total: 0.11s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/tar-1.34-bk5hidphc2hnjtnv67xxv2azwjl26txp
==> Installing perl-5.38.0-okr2qfjxgz4jc5xnkxwl74haxa33sf5w [28/46]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-perl-5.38.0-okr2qfjxgz4jc5xnkxwl74haxa33sf5w.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/perl-5.38.0/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-perl-5.38.0-okr2qfjxgz4jc5xnkxwl74haxa33sf5w.spack
==> Extracting perl-5.38.0-okr2qfjxgz4jc5xnkxwl74haxa33sf5w from binary cache
==> perl: Successfully installed perl-5.38.0-okr2qfjxgz4jc5xnkxwl74haxa33sf5w
Search: 0.00s. Fetch: 0.02s. Install: 0.84s. Extract: 0.73s. Relocate: 0.11s. Total: 0.87s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/perl-5.38.0-okr2qfjxgz4jc5xnkxwl74haxa33sf5w
==> Installing libpciaccess-0.17-3i3i255rigqdxrsszbhf6mu3k3poii6p [29/46]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-libpciaccess-0.17-3i3i255rigqdxrsszbhf6mu3k3poii6p.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-3i3i255rigqdxrsszbhf6mu3k3poii6p.spack
==> Extracting libpciaccess-0.17-3i3i255rigqdxrsszbhf6mu3k3poii6p from binary cache
==> libpciaccess: Successfully installed libpciaccess-0.17-3i3i255rigqdxrsszbhf6mu3k3poii6p
Search: 0.00s. Fetch: 0.01s. Install: 0.03s. Extract: 0.01s. Relocate: 0.01s. Total: 0.04s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libpciaccess-0.17-3i3i255rigqdxrsszbhf6mu3k3poii6p
==> Installing gettext-0.22.5-omjznijs2nj3zeeuerckiefjhootsur5 [30/46]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-gettext-0.22.5-omjznijs2nj3zeeuerckiefjhootsur5.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-omjznijs2nj3zeeuerckiefjhootsur5.spack
==> Extracting gettext-0.22.5-omjznijs2nj3zeeuerckiefjhootsur5 from binary cache
==> gettext: Successfully installed gettext-0.22.5-omjznijs2nj3zeeuerckiefjhootsur5
Search: 0.00s. Fetch: 0.02s. Install: 0.69s. Extract: 0.64s. Relocate: 0.04s. Total: 0.71s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gettext-0.22.5-omjznijs2nj3zeeuerckiefjhootsur5
==> Installing openssl-3.3.0-7zs2o3jeizrvdjg2eklcfb6w7j7iy6qw [31/46]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-openssl-3.3.0-7zs2o3jeizrvdjg2eklcfb6w7j7iy6qw.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/openssl-3.3.0/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-openssl-3.3.0-7zs2o3jeizrvdjg2eklcfb6w7j7iy6qw.spack
==> Extracting openssl-3.3.0-7zs2o3jeizrvdjg2eklcfb6w7j7iy6qw from binary cache
==> openssl: Successfully installed openssl-3.3.0-7zs2o3jeizrvdjg2eklcfb6w7j7iy6qw
Search: 0.00s. Fetch: 0.02s. Install: 0.23s. Extract: 0.20s. Relocate: 0.02s. Total: 0.25s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/openssl-3.3.0-7zs2o3jeizrvdjg2eklcfb6w7j7iy6qw
==> Installing autoconf-2.72-vcb35sxzbnxlnms3jxmmt44r2si7xuws [32/46]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-autoconf-2.72-vcb35sxzbnxlnms3jxmmt44r2si7xuws.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-vcb35sxzbnxlnms3jxmmt44r2si7xuws.spack
==> Extracting autoconf-2.72-vcb35sxzbnxlnms3jxmmt44r2si7xuws from binary cache
==> autoconf: Successfully installed autoconf-2.72-vcb35sxzbnxlnms3jxmmt44r2si7xuws
Search: 0.00s. Fetch: 0.01s. Install: 0.08s. Extract: 0.05s. Relocate: 0.02s. Total: 0.09s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/autoconf-2.72-vcb35sxzbnxlnms3jxmmt44r2si7xuws
==> Installing openblas-0.3.26-7oujjunznvxeef7agmqnkqzeelmtp44q [33/46]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-openblas-0.3.26-7oujjunznvxeef7agmqnkqzeelmtp44q.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/openblas-0.3.26/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-openblas-0.3.26-7oujjunznvxeef7agmqnkqzeelmtp44q.spack
==> Extracting openblas-0.3.26-7oujjunznvxeef7agmqnkqzeelmtp44q from binary cache
==> openblas: Successfully installed openblas-0.3.26-7oujjunznvxeef7agmqnkqzeelmtp44q
Search: 0.00s. Fetch: 0.04s. Install: 0.74s. Extract: 0.69s. Relocate: 0.04s. Total: 0.78s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/openblas-0.3.26-7oujjunznvxeef7agmqnkqzeelmtp44q
==> Installing libxcrypt-4.4.35-ue2bwi7wgeqq7mwi2o6sp3vurj64clw4 [34/46]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-libxcrypt-4.4.35-ue2bwi7wgeqq7mwi2o6sp3vurj64clw4.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-ue2bwi7wgeqq7mwi2o6sp3vurj64clw4.spack
==> Extracting libxcrypt-4.4.35-ue2bwi7wgeqq7mwi2o6sp3vurj64clw4 from binary cache
==> libxcrypt: Successfully installed libxcrypt-4.4.35-ue2bwi7wgeqq7mwi2o6sp3vurj64clw4
Search: 0.00s. Fetch: 0.01s. Install: 0.05s. Extract: 0.03s. Relocate: 0.01s. Total: 0.06s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libxcrypt-4.4.35-ue2bwi7wgeqq7mwi2o6sp3vurj64clw4
==> Installing hwloc-2.9.1-qeaglvh36rm22m2wl5mcwmlzjdt7noi2 [35/46]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-hwloc-2.9.1-qeaglvh36rm22m2wl5mcwmlzjdt7noi2.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/hwloc-2.9.1/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-hwloc-2.9.1-qeaglvh36rm22m2wl5mcwmlzjdt7noi2.spack
==> Extracting hwloc-2.9.1-qeaglvh36rm22m2wl5mcwmlzjdt7noi2 from binary cache
==> hwloc: Successfully installed hwloc-2.9.1-qeaglvh36rm22m2wl5mcwmlzjdt7noi2
Search: 0.00s. Fetch: 0.01s. Install: 0.22s. Extract: 0.19s. Relocate: 0.02s. Total: 0.24s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/hwloc-2.9.1-qeaglvh36rm22m2wl5mcwmlzjdt7noi2
==> Installing curl-8.7.1-bawzanq2b4gackw6un7m2fkkjnaiylbz [36/46]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-curl-8.7.1-bawzanq2b4gackw6un7m2fkkjnaiylbz.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/curl-8.7.1/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-curl-8.7.1-bawzanq2b4gackw6un7m2fkkjnaiylbz.spack
==> Extracting curl-8.7.1-bawzanq2b4gackw6un7m2fkkjnaiylbz from binary cache
==> curl: Successfully installed curl-8.7.1-bawzanq2b4gackw6un7m2fkkjnaiylbz
Search: 0.00s. Fetch: 0.01s. Install: 0.18s. Extract: 0.16s. Relocate: 0.01s. Total: 0.19s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/curl-8.7.1-bawzanq2b4gackw6un7m2fkkjnaiylbz
==> Installing krb5-1.20.1-w3lwbhdizlzuh7z6sjm6h22y6iylsvwo [37/46]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-krb5-1.20.1-w3lwbhdizlzuh7z6sjm6h22y6iylsvwo.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/krb5-1.20.1/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-krb5-1.20.1-w3lwbhdizlzuh7z6sjm6h22y6iylsvwo.spack
==> Extracting krb5-1.20.1-w3lwbhdizlzuh7z6sjm6h22y6iylsvwo from binary cache
==> krb5: Successfully installed krb5-1.20.1-w3lwbhdizlzuh7z6sjm6h22y6iylsvwo
Search: 0.00s. Fetch: 0.01s. Install: 0.15s. Extract: 0.10s. Relocate: 0.04s. Total: 0.16s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/krb5-1.20.1-w3lwbhdizlzuh7z6sjm6h22y6iylsvwo
==> Installing libevent-2.1.12-qmgnv2nhjkya6hizkyd27akgc5uamwvx [38/46]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-libevent-2.1.12-qmgnv2nhjkya6hizkyd27akgc5uamwvx.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-qmgnv2nhjkya6hizkyd27akgc5uamwvx.spack
==> Extracting libevent-2.1.12-qmgnv2nhjkya6hizkyd27akgc5uamwvx from binary cache
==> libevent: Successfully installed libevent-2.1.12-qmgnv2nhjkya6hizkyd27akgc5uamwvx
Search: 0.00s. Fetch: 0.01s. Install: 0.10s. Extract: 0.08s. Relocate: 0.01s. Total: 0.11s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libevent-2.1.12-qmgnv2nhjkya6hizkyd27akgc5uamwvx
==> Installing automake-1.16.5-6liamd64ojf4yihwzdw6zn3pe3mhfxrx [39/46]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-automake-1.16.5-6liamd64ojf4yihwzdw6zn3pe3mhfxrx.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-6liamd64ojf4yihwzdw6zn3pe3mhfxrx.spack
==> Extracting automake-1.16.5-6liamd64ojf4yihwzdw6zn3pe3mhfxrx from binary cache
==> automake: Successfully installed automake-1.16.5-6liamd64ojf4yihwzdw6zn3pe3mhfxrx
Search: 0.00s. Fetch: 0.01s. Install: 0.09s. Extract: 0.05s. Relocate: 0.02s. Total: 0.09s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/automake-1.16.5-6liamd64ojf4yihwzdw6zn3pe3mhfxrx
==> Installing cmake-3.27.9-gnvkrt4xthkwiqwwvejt24bv4ftljvkw [40/46]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-cmake-3.27.9-gnvkrt4xthkwiqwwvejt24bv4ftljvkw.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/cmake-3.27.9/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-cmake-3.27.9-gnvkrt4xthkwiqwwvejt24bv4ftljvkw.spack
==> Extracting cmake-3.27.9-gnvkrt4xthkwiqwwvejt24bv4ftljvkw from binary cache
==> cmake: Successfully installed cmake-3.27.9-gnvkrt4xthkwiqwwvejt24bv4ftljvkw
Search: 0.00s. Fetch: 0.04s. Install: 1.31s. Extract: 1.23s. Relocate: 0.07s. Total: 1.34s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/cmake-3.27.9-gnvkrt4xthkwiqwwvejt24bv4ftljvkw
==> Installing openssh-9.7p1-3uvvdf2knzlj2h7jryuk7plf7nsqzzwa [41/46]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-openssh-9.7p1-3uvvdf2knzlj2h7jryuk7plf7nsqzzwa.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/openssh-9.7p1/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-openssh-9.7p1-3uvvdf2knzlj2h7jryuk7plf7nsqzzwa.spack
==> Extracting openssh-9.7p1-3uvvdf2knzlj2h7jryuk7plf7nsqzzwa from binary cache
==> openssh: Successfully installed openssh-9.7p1-3uvvdf2knzlj2h7jryuk7plf7nsqzzwa
Search: 0.00s. Fetch: 0.01s. Install: 0.13s. Extract: 0.09s. Relocate: 0.03s. Total: 0.14s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/openssh-9.7p1-3uvvdf2knzlj2h7jryuk7plf7nsqzzwa
==> Installing pmix-5.0.1-4o6gxsyq3ju2b7nx4z6gvm4uaegbghyp [42/46]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-pmix-5.0.1-4o6gxsyq3ju2b7nx4z6gvm4uaegbghyp.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/pmix-5.0.1/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-pmix-5.0.1-4o6gxsyq3ju2b7nx4z6gvm4uaegbghyp.spack
==> Extracting pmix-5.0.1-4o6gxsyq3ju2b7nx4z6gvm4uaegbghyp from binary cache
==> pmix: Successfully installed pmix-5.0.1-4o6gxsyq3ju2b7nx4z6gvm4uaegbghyp
Search: 0.00s. Fetch: 0.01s. Install: 0.22s. Extract: 0.18s. Relocate: 0.03s. Total: 0.24s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/pmix-5.0.1-4o6gxsyq3ju2b7nx4z6gvm4uaegbghyp
==> Installing numactl-2.0.14-g46wb44nglnflvkotzd5pv45f2lcm3mw [43/46]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-numactl-2.0.14-g46wb44nglnflvkotzd5pv45f2lcm3mw.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/numactl-2.0.14/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-numactl-2.0.14-g46wb44nglnflvkotzd5pv45f2lcm3mw.spack
==> Extracting numactl-2.0.14-g46wb44nglnflvkotzd5pv45f2lcm3mw from binary cache
==> numactl: Successfully installed numactl-2.0.14-g46wb44nglnflvkotzd5pv45f2lcm3mw
Search: 0.00s. Fetch: 0.01s. Install: 0.05s. Extract: 0.03s. Relocate: 0.01s. Total: 0.06s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/numactl-2.0.14-g46wb44nglnflvkotzd5pv45f2lcm3mw
==> Installing kokkos-4.2.01-iuiymnmntab6geybvougsyhhnwibgxai [44/46]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-kokkos-4.2.01-iuiymnmntab6geybvougsyhhnwibgxai.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/kokkos-4.2.01/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-kokkos-4.2.01-iuiymnmntab6geybvougsyhhnwibgxai.spack
==> Extracting kokkos-4.2.01-iuiymnmntab6geybvougsyhhnwibgxai from binary cache
==> kokkos: Successfully installed kokkos-4.2.01-iuiymnmntab6geybvougsyhhnwibgxai
Search: 0.00s. Fetch: 0.01s. Install: 0.16s. Extract: 0.14s. Relocate: 0.01s. Total: 0.17s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/kokkos-4.2.01-iuiymnmntab6geybvougsyhhnwibgxai
==> Installing openmpi-5.0.3-4a67ev2psutyq5iowi6jh2e3wwwjzi66 [45/46]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-openmpi-5.0.3-4a67ev2psutyq5iowi6jh2e3wwwjzi66.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/openmpi-5.0.3/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-openmpi-5.0.3-4a67ev2psutyq5iowi6jh2e3wwwjzi66.spack
==> Extracting openmpi-5.0.3-4a67ev2psutyq5iowi6jh2e3wwwjzi66 from binary cache
==> openmpi: Successfully installed openmpi-5.0.3-4a67ev2psutyq5iowi6jh2e3wwwjzi66
Search: 0.00s. Fetch: 0.03s. Install: 0.98s. Extract: 0.93s. Relocate: 0.04s. Total: 1.01s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/openmpi-5.0.3-4a67ev2psutyq5iowi6jh2e3wwwjzi66
==> Installing trilinos-15.1.1-is6uzcxlhhjasjyijies4jbanjzqr6nf [46/46]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-trilinos-15.1.1-is6uzcxlhhjasjyijies4jbanjzqr6nf.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/trilinos-15.1.1/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-trilinos-15.1.1-is6uzcxlhhjasjyijies4jbanjzqr6nf.spack
==> Extracting trilinos-15.1.1-is6uzcxlhhjasjyijies4jbanjzqr6nf from binary cache
==> trilinos: Successfully installed trilinos-15.1.1-is6uzcxlhhjasjyijies4jbanjzqr6nf
Search: 0.00s. Fetch: 0.05s. Install: 2.07s. Extract: 1.91s. Relocate: 0.15s. Total: 2.13s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/trilinos-15.1.1-is6uzcxlhhjasjyijies4jbanjzqr6nf
==> Updating view at /home/spack/spack/var/spack/environments/myproject/.spack-env/view
We see that tcl
and the dependencies of trilinos
are
already installed, and that trilinos
was newly installed.
We also see that the environment’s view was updated
to include the new installations.
Now confirm the contents of the environment using spack find
:
$ spack find
==> In environment myproject
==> 2 root specs
[+] tcl [+] trilinos
==> Installed packages
-- linux-ubuntu22.04-x86_64_v3 / gcc@11.4.0 ---------------------
autoconf@2.72 kokkos@4.2.01 openssh@9.7p1
automake@1.16.5 krb5@1.20.1 openssl@3.3.0
berkeley-db@18.1.40 libedit@3.1-20230828 perl@5.38.0
bison@3.8.2 libevent@2.1.12 pigz@2.8
bzip2@1.0.8 libiconv@1.17 pkgconf@2.2.0
ca-certificates-mozilla@2023-05-30 libpciaccess@0.17 pmix@5.0.1
cmake@3.27.9 libsigsegv@2.14 readline@8.2
curl@8.7.1 libtool@2.4.7 tar@1.34
diffutils@3.10 libxcrypt@4.4.35 tcl@8.6.12
findutils@4.9.0 libxml2@2.10.3 trilinos@15.1.1
gcc-runtime@11.4.0 m4@1.4.19 util-macros@1.19.3
gdbm@1.23 ncurses@6.5 xz@5.4.6
gettext@0.22.5 nghttp2@1.57.0 zlib-ng@2.1.6
glibc@2.35 numactl@2.0.14 zstd@1.5.6
gmake@4.4.1 openblas@0.3.26
hwloc@2.9.1 openmpi@5.0.3
==> 46 installed packages
We can see that the roots and all their dependencies have been installed.
Creating an environment incrementally
As a short-hand, you can use the install --add
flag to accomplish
the same thing in one step:
$ spack install --add tcl trilinos
This both adds the specs to the environment and installs them.
You can also add and install specs to an environment incrementally. For example:
$ spack install --add tcl
$ spack install --add trilinos
If you create environments incrementally, Spack ensures that already installed roots are not re-concretized. So, adding specs to an environment at a later point in time will not cause existing packages to rebuild.
Do note however that incrementally creating an environment can give you different package versions from an environment created all at once. We will cover this after we’ve discussed different concretization strategies.
Further, there are two other advantages of concretizing and installing an environment all at once:
If you have a number of specs that can be installed together, adding them first and installing them together enables them to share dependencies and reduces total installation time.
You can launch all builds in parallel by taking advantage of Spack’s install-level build parallelism.
Using packages
Environments provide a convenient way for using installed packages.
Running spack env activate
gives you everything in the environment
on your PATH
. Otherwise, you would need to use spack load
or module load
for each package in order to set up the environment for the package (and
its dependencies).
When you install packages into an environment, they are, by default,
linked into a single prefix, or view. Activating the environment
with spack env activate
results in subdirectories from the view
being added to PATH
, MANPATH
, CMAKE_PREFIX_PATH
,
and other environment variables. This makes the environment easier to use.
Let’s try it out. We just installed tcl
into our myproject
environment. Tcl
includes a shell-like application called tclsh
.
You can see the path to tclsh
using which
:
$ which tclsh
/home/spack/spack/var/spack/environments/myproject/.spack-env/view/bin/tclsh
Notice its path includes the name of our environment and a view
subdirectory.
You can now run tclsh
like you would any other program that is
in your path:
$ tclsh
% echo "hello world!"
hello world!
% exit
Uninstalling packages
We can uninstall packages from an environment without affecting other environments. This is possible since, while Spack shares common installations, environments only link to those installations.
Let’s demonstrate this feature by creating another environment.
Suppose myproject
requires trilinos
but we have another
project that has it installed but no longer requires it.
Start by creating a myproject2
environment with the installed
packages scr
and trilinos
.
$ spack env create myproject2
==> Created environment myproject2 in: /home/spack/spack/var/spack/environments/myproject2
==> Activate with: spack env activate myproject2
$ spack env activate myproject2
$ spack add scr trilinos
==> Adding scr to environment myproject2
==> Adding trilinos to environment myproject2
$ spack install
==> Concretized scr
- ulfbgok scr@2.0.0%gcc@11.4.0+dtcmp~fortran~ipo+libyogrt async_api=NONE build_system=cmake build_type=Release cache_base=/dev/shm cntl_base=/dev/shm copy_config=none file_lock=FLOCK generator=make resource_manager=SLURM scr_config=scr.conf arch=linux-ubuntu22.04-x86_64_v3
[+] gnvkrt4 ^cmake@3.27.9%gcc@11.4.0~doc+ncurses+ownlibs build_system=generic build_type=Release arch=linux-ubuntu22.04-x86_64_v3
[+] bawzanq ^curl@8.7.1%gcc@11.4.0~gssapi~ldap~libidn2~librtmp~libssh~libssh2+nghttp2 build_system=autotools libs=shared,static tls=openssl arch=linux-ubuntu22.04-x86_64_v3
[+] l4jcye6 ^nghttp2@1.57.0%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] njmgt4r ^diffutils@3.10%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] 7zs2o3j ^openssl@3.3.0%gcc@11.4.0~docs+shared build_system=generic certs=mozilla arch=linux-ubuntu22.04-x86_64_v3
[+] yw5x67u ^ca-certificates-mozilla@2023-05-30%gcc@11.4.0 build_system=generic arch=linux-ubuntu22.04-x86_64_v3
[+] gk4xs2i ^ncurses@6.5%gcc@11.4.0~symlinks+termlib abi=none build_system=autotools patches=7a351bc arch=linux-ubuntu22.04-x86_64_v3
- dcm5c2d ^dtcmp@1.1.4%gcc@11.4.0+shared build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
- u4yiup5 ^lwgrp@1.0.5%gcc@11.4.0+shared build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] f47qm6q ^gcc-runtime@11.4.0%gcc@11.4.0 build_system=generic arch=linux-ubuntu22.04-x86_64_v3
[e] a7drdl4 ^glibc@2.35%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] qfrotcc ^gmake@4.4.1%gcc@11.4.0~guile build_system=generic arch=linux-ubuntu22.04-x86_64_v3
- 6ru4dtf ^libyogrt@1.33%gcc@11.4.0~static build_system=autotools scheduler=slurm arch=linux-ubuntu22.04-x86_64_v3
- 2u5klo7 ^slurm@23-11-1-1%gcc@11.4.0~cgroup~gtk~hdf5~hwloc~mariadb~nvml~pam~pmix+readline~restd~rsmi build_system=autotools sysconfdir=PREFIX/etc arch=linux-ubuntu22.04-x86_64_v3
- sygfgcv ^glib@2.78.3%gcc@11.4.0~libmount~strip build_system=meson buildtype=release default_library=shared tracing=none arch=linux-ubuntu22.04-x86_64_v3
- kchje7r ^elfutils@0.190%gcc@11.4.0~debuginfod+exeprefix+nls build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] ew3aaos ^zstd@1.5.6%gcc@11.4.0+programs build_system=makefile compression=none libs=shared,static arch=linux-ubuntu22.04-x86_64_v3
[+] omjznij ^gettext@0.22.5%gcc@11.4.0+bzip2+curses+git~libunistring+libxml2+pic+shared+tar+xz build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] bk5hidp ^tar@1.34%gcc@11.4.0 build_system=autotools zip=pigz arch=linux-ubuntu22.04-x86_64_v3
[+] gk55zt7 ^pigz@2.8%gcc@11.4.0 build_system=makefile arch=linux-ubuntu22.04-x86_64_v3
- dcinbzl ^libffi@3.4.6%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] bj46qor ^libiconv@1.17%gcc@11.4.0 build_system=autotools libs=shared,static arch=linux-ubuntu22.04-x86_64_v3
- hcx5grc ^meson@1.3.2%gcc@11.4.0 build_system=python_pip patches=0f0b1bd arch=linux-ubuntu22.04-x86_64_v3
- 5dkwvch ^py-pip@23.1.2%gcc@11.4.0 build_system=generic arch=linux-ubuntu22.04-x86_64_v3
- brurzqi ^py-setuptools@69.2.0%gcc@11.4.0 build_system=generic arch=linux-ubuntu22.04-x86_64_v3
- jkjjqnw ^py-wheel@0.41.2%gcc@11.4.0 build_system=generic arch=linux-ubuntu22.04-x86_64_v3
- h2givkl ^python-venv@1.0%gcc@11.4.0 build_system=generic arch=linux-ubuntu22.04-x86_64_v3
- dghhi6i ^ninja@1.11.1%gcc@11.4.0+re2c build_system=generic arch=linux-ubuntu22.04-x86_64_v3
- aznyzrs ^re2c@2.2%gcc@11.4.0 build_system=generic arch=linux-ubuntu22.04-x86_64_v3
- vxov4my ^pcre2@10.43%gcc@11.4.0~jit+multibyte build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
- thvfh6q ^python@3.11.7%gcc@11.4.0+bz2+crypt+ctypes+dbm~debug+libxml2+lzma~nis~optimizations+pic+pyexpat+pythoncmd+readline+shared+sqlite3+ssl~tkinter+uuid+zlib build_system=generic patches=13fa8bf,b0615b2,ebdca64,f2fd060 arch=linux-ubuntu22.04-x86_64_v3
- qhjiz57 ^expat@2.6.2%gcc@11.4.0+libbsd build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
- ca45y6k ^libbsd@0.12.1%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
- evfudm6 ^libmd@1.0.4%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
- ejzddmp ^sqlite@3.43.2%gcc@11.4.0+column_metadata+dynamic_extensions+fts~functions+rtree build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
- xshts7x ^util-linux-uuid@2.38.1%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
- ekwg76k ^json-c@0.16%gcc@11.4.0~ipo build_system=cmake build_type=Release generator=make arch=linux-ubuntu22.04-x86_64_v3
- js6n6n2 ^lz4@1.9.4%gcc@11.4.0+pic build_system=makefile libs=shared,static arch=linux-ubuntu22.04-x86_64_v3
- mubxfno ^munge@0.5.15%gcc@11.4.0 build_system=autotools localstatedir=PREFIX/var arch=linux-ubuntu22.04-x86_64_v3
- my2pdop ^libgcrypt@1.10.3%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
- uegdzba ^libgpg-error@1.49%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
- pxluxly ^gawk@5.3.0%gcc@11.4.0~nls build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
- g7mpsit ^gmp@6.2.1%gcc@11.4.0+cxx build_system=autotools libs=shared,static patches=69ad2e2 arch=linux-ubuntu22.04-x86_64_v3
- ik5cu7p ^mpfr@4.2.1%gcc@11.4.0 build_system=autotools libs=shared,static arch=linux-ubuntu22.04-x86_64_v3
- rq5jepf ^autoconf-archive@2023.02.20%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
- sprd63k ^texinfo@7.0.3%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] cb6x34k ^readline@8.2%gcc@11.4.0 build_system=autotools patches=bbf97f1 arch=linux-ubuntu22.04-x86_64_v3
[+] 4a67ev2 ^openmpi@5.0.3%gcc@11.4.0~atomics~cuda~gpfs~internal-hwloc~internal-libevent~internal-pmix~java~legacylaunchers~lustre~memchecker~openshmem~orterunprefix~romio+rsh~static+vt+wrapper-rpath build_system=autotools fabrics=none romio-filesystem=none schedulers=none arch=linux-ubuntu22.04-x86_64_v3
[+] vcb35sx ^autoconf@2.72%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] sd3ytde ^m4@1.4.19%gcc@11.4.0+sigsegv build_system=autotools patches=9dc5fbd,bfdffa7 arch=linux-ubuntu22.04-x86_64_v3
[+] jwy3fyz ^libsigsegv@2.14%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] 6liamd6 ^automake@1.16.5%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] qeaglvh ^hwloc@2.9.1%gcc@11.4.0~cairo~cuda~gl~libudev+libxml2~netloc~nvml~oneapi-level-zero~opencl+pci~rocm build_system=autotools libs=shared,static arch=linux-ubuntu22.04-x86_64_v3
[+] 3i3i255 ^libpciaccess@0.17%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] egkyddp ^util-macros@1.19.3%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] s3vgala ^libxml2@2.10.3%gcc@11.4.0+pic~python+shared build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] syttnnt ^xz@5.4.6%gcc@11.4.0~pic build_system=autotools libs=shared,static arch=linux-ubuntu22.04-x86_64_v3
[+] qmgnv2n ^libevent@2.1.12%gcc@11.4.0+openssl build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] uwrcuds ^libtool@2.4.7%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] v4yzc2w ^findutils@4.9.0%gcc@11.4.0 build_system=autotools patches=440b954 arch=linux-ubuntu22.04-x86_64_v3
[+] g46wb44 ^numactl@2.0.14%gcc@11.4.0 build_system=autotools patches=4e1d78c,62fc8a8,ff37630 arch=linux-ubuntu22.04-x86_64_v3
[+] 3uvvdf2 ^openssh@9.7p1%gcc@11.4.0+gssapi build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] w3lwbhd ^krb5@1.20.1%gcc@11.4.0+shared build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] b5e3naw ^bison@3.8.2%gcc@11.4.0~color build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] swglgxe ^libedit@3.1-20230828%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] ue2bwi7 ^libxcrypt@4.4.35%gcc@11.4.0~obsolete_api build_system=autotools patches=4885da3 arch=linux-ubuntu22.04-x86_64_v3
[+] okr2qfj ^perl@5.38.0%gcc@11.4.0+cpanm+opcode+open+shared+threads build_system=generic patches=714e4d1 arch=linux-ubuntu22.04-x86_64_v3
[+] br27jq6 ^berkeley-db@18.1.40%gcc@11.4.0+cxx~docs+stl build_system=autotools patches=26090f4,b231fcc arch=linux-ubuntu22.04-x86_64_v3
[+] w3nrdq4 ^bzip2@1.0.8%gcc@11.4.0~debug~pic+shared build_system=generic arch=linux-ubuntu22.04-x86_64_v3
[+] ohbrdtp ^gdbm@1.23%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] h3x3l7s ^pkgconf@2.2.0%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] 4o6gxsy ^pmix@5.0.1%gcc@11.4.0~docs+pmi_backwards_compatibility~python~restful build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
- qdpmd2n ^pdsh@2.31%gcc@11.4.0+ssh+static_modules build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] xqtp62n ^zlib-ng@2.1.6%gcc@11.4.0+compat+new_strategies+opt+pic+shared build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
==> Concretized trilinos
[+] is6uzcx trilinos@15.1.1%gcc@11.4.0~adelus~adios2+amesos+amesos2+anasazi+aztec~basker+belos~boost~chaco~complex~cuda~cuda_rdc~debug~dtk+epetra+epetraext~epetraextbtf~epetraextexperimental~epetraextgraphreorderings~exodus+explicit_template_instantiation~float+fortran~gtest~hdf5~hypre+ifpack+ifpack2~intrepid~intrepid2~ipo~isorropia+kokkos~mesquite~minitensor+ml+mpi+muelu~mumps~nox~openmp~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
[+] gnvkrt4 ^cmake@3.27.9%gcc@11.4.0~doc+ncurses+ownlibs build_system=generic build_type=Release arch=linux-ubuntu22.04-x86_64_v3
[+] bawzanq ^curl@8.7.1%gcc@11.4.0~gssapi~ldap~libidn2~librtmp~libssh~libssh2+nghttp2 build_system=autotools libs=shared,static tls=openssl arch=linux-ubuntu22.04-x86_64_v3
[+] l4jcye6 ^nghttp2@1.57.0%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] njmgt4r ^diffutils@3.10%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] 7zs2o3j ^openssl@3.3.0%gcc@11.4.0~docs+shared build_system=generic certs=mozilla arch=linux-ubuntu22.04-x86_64_v3
[+] yw5x67u ^ca-certificates-mozilla@2023-05-30%gcc@11.4.0 build_system=generic arch=linux-ubuntu22.04-x86_64_v3
[+] gk4xs2i ^ncurses@6.5%gcc@11.4.0~symlinks+termlib abi=none build_system=autotools patches=7a351bc arch=linux-ubuntu22.04-x86_64_v3
[+] xqtp62n ^zlib-ng@2.1.6%gcc@11.4.0+compat+new_strategies+opt+pic+shared build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] f47qm6q ^gcc-runtime@11.4.0%gcc@11.4.0 build_system=generic arch=linux-ubuntu22.04-x86_64_v3
[e] a7drdl4 ^glibc@2.35%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] qfrotcc ^gmake@4.4.1%gcc@11.4.0~guile build_system=generic arch=linux-ubuntu22.04-x86_64_v3
[+] qeaglvh ^hwloc@2.9.1%gcc@11.4.0~cairo~cuda~gl~libudev+libxml2~netloc~nvml~oneapi-level-zero~opencl+pci~rocm build_system=autotools libs=shared,static arch=linux-ubuntu22.04-x86_64_v3
[+] 3i3i255 ^libpciaccess@0.17%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] egkyddp ^util-macros@1.19.3%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] s3vgala ^libxml2@2.10.3%gcc@11.4.0+pic~python+shared build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] bj46qor ^libiconv@1.17%gcc@11.4.0 build_system=autotools libs=shared,static arch=linux-ubuntu22.04-x86_64_v3
[+] syttnnt ^xz@5.4.6%gcc@11.4.0~pic build_system=autotools libs=shared,static arch=linux-ubuntu22.04-x86_64_v3
[+] h3x3l7s ^pkgconf@2.2.0%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] iuiymnm ^kokkos@4.2.01%gcc@11.4.0~aggressive_vectorization~compiler_warnings~cuda~debug~debug_bounds_check~debug_dualview_modify_check~deprecated_code~examples~hpx~hpx_async_dispatch~hwloc~ipo~memkind~numactl~openmp~openmptarget~pic~rocm+serial+shared~sycl~tests~threads~tuning~wrapper build_system=cmake build_type=Release cxxstd=17 generator=make intel_gpu_arch=none arch=linux-ubuntu22.04-x86_64_v3
[+] 7oujjun ^openblas@0.3.26%gcc@11.4.0~bignuma~consistent_fpcsr+dynamic_dispatch+fortran~ilp64+locking+pic+shared build_system=makefile symbol_suffix=none threads=none arch=linux-ubuntu22.04-x86_64_v3
[+] okr2qfj ^perl@5.38.0%gcc@11.4.0+cpanm+opcode+open+shared+threads build_system=generic patches=714e4d1 arch=linux-ubuntu22.04-x86_64_v3
[+] br27jq6 ^berkeley-db@18.1.40%gcc@11.4.0+cxx~docs+stl build_system=autotools patches=26090f4,b231fcc arch=linux-ubuntu22.04-x86_64_v3
[+] w3nrdq4 ^bzip2@1.0.8%gcc@11.4.0~debug~pic+shared build_system=generic arch=linux-ubuntu22.04-x86_64_v3
[+] ohbrdtp ^gdbm@1.23%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] cb6x34k ^readline@8.2%gcc@11.4.0 build_system=autotools patches=bbf97f1 arch=linux-ubuntu22.04-x86_64_v3
[+] 4a67ev2 ^openmpi@5.0.3%gcc@11.4.0~atomics~cuda~gpfs~internal-hwloc~internal-libevent~internal-pmix~java~legacylaunchers~lustre~memchecker~openshmem~orterunprefix~romio+rsh~static+vt+wrapper-rpath build_system=autotools fabrics=none romio-filesystem=none schedulers=none arch=linux-ubuntu22.04-x86_64_v3
[+] vcb35sx ^autoconf@2.72%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] sd3ytde ^m4@1.4.19%gcc@11.4.0+sigsegv build_system=autotools patches=9dc5fbd,bfdffa7 arch=linux-ubuntu22.04-x86_64_v3
[+] jwy3fyz ^libsigsegv@2.14%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] 6liamd6 ^automake@1.16.5%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] qmgnv2n ^libevent@2.1.12%gcc@11.4.0+openssl build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] uwrcuds ^libtool@2.4.7%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] v4yzc2w ^findutils@4.9.0%gcc@11.4.0 build_system=autotools patches=440b954 arch=linux-ubuntu22.04-x86_64_v3
[+] g46wb44 ^numactl@2.0.14%gcc@11.4.0 build_system=autotools patches=4e1d78c,62fc8a8,ff37630 arch=linux-ubuntu22.04-x86_64_v3
[+] 3uvvdf2 ^openssh@9.7p1%gcc@11.4.0+gssapi build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] w3lwbhd ^krb5@1.20.1%gcc@11.4.0+shared build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] b5e3naw ^bison@3.8.2%gcc@11.4.0~color build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] omjznij ^gettext@0.22.5%gcc@11.4.0+bzip2+curses+git~libunistring+libxml2+pic+shared+tar+xz build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] bk5hidp ^tar@1.34%gcc@11.4.0 build_system=autotools zip=pigz arch=linux-ubuntu22.04-x86_64_v3
[+] gk55zt7 ^pigz@2.8%gcc@11.4.0 build_system=makefile arch=linux-ubuntu22.04-x86_64_v3
[+] ew3aaos ^zstd@1.5.6%gcc@11.4.0+programs build_system=makefile compression=none libs=shared,static arch=linux-ubuntu22.04-x86_64_v3
[+] swglgxe ^libedit@3.1-20230828%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] ue2bwi7 ^libxcrypt@4.4.35%gcc@11.4.0~obsolete_api build_system=autotools patches=4885da3 arch=linux-ubuntu22.04-x86_64_v3
[+] 4o6gxsy ^pmix@5.0.1%gcc@11.4.0~docs+pmi_backwards_compatibility~python~restful build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] /usr (external glibc-2.35-a7drdl4tlx4bu3mzhor75pskvd3pdot6)
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gcc-runtime-11.4.0-f47qm6qeplqyahc4zhfpfdnf5mo6gxvd
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/findutils-4.9.0-v4yzc2wwg33pu64bs64rfhu6k4nb3r33
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libiconv-1.17-bj46qorfdrbz67euv5g4s7isuniqjjpl
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libsigsegv-2.14-jwy3fyzf5vk74lvkdpa6uf4rqlvfz7my
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libxcrypt-4.4.35-ue2bwi7wgeqq7mwi2o6sp3vurj64clw4
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/zstd-1.5.6-ew3aaosbmf3ts2ylqgi4c6enfmf3m5dr
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/numactl-2.0.14-g46wb44nglnflvkotzd5pv45f2lcm3mw
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/ncurses-6.5-gk4xs2idegfiwoyaikamyhxkjrruxtxa
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/zlib-ng-2.1.6-xqtp62nft6pt5slbdljucwnkl5fxd6x4
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/kokkos-4.2.01-iuiymnmntab6geybvougsyhhnwibgxai
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/xz-5.4.6-syttnntihi6n463mupmgl5e7kp5izxkz
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/pkgconf-2.2.0-h3x3l7sed4l2efuskhaldi6ilmkoyeaa
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/openblas-0.3.26-7oujjunznvxeef7agmqnkqzeelmtp44q
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gmake-4.4.1-qfrotccvbyovembcoto3jajc3vuvcejo
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/openssl-3.3.0-7zs2o3jeizrvdjg2eklcfb6w7j7iy6qw
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libtool-2.4.7-uwrcudssgr763a2del5tomr6vv2xkv22
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libedit-3.1-20230828-swglgxeckeajkjp4b7d66fbsyn6hjsdh
==> Installing libffi-3.4.6-dcinbzl32tc7qe73qoew4eulurpzvkig [19/74]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-libffi-3.4.6-dcinbzl32tc7qe73qoew4eulurpzvkig.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-dcinbzl32tc7qe73qoew4eulurpzvkig.spack
==> Extracting libffi-3.4.6-dcinbzl32tc7qe73qoew4eulurpzvkig from binary cache
==> libffi: Successfully installed libffi-3.4.6-dcinbzl32tc7qe73qoew4eulurpzvkig
Search: 0.00s. Fetch: 0.12s. Install: 0.06s. Extract: 0.04s. Relocate: 0.01s. Total: 0.17s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libffi-3.4.6-dcinbzl32tc7qe73qoew4eulurpzvkig
==> Installing util-linux-uuid-2.38.1-xshts7x2hjr7km6cj4zr5rpxn75tmwgp [20/74]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-util-linux-uuid-2.38.1-xshts7x2hjr7km6cj4zr5rpxn75tmwgp.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/util-linux-uuid-2.38.1/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-util-linux-uuid-2.38.1-xshts7x2hjr7km6cj4zr5rpxn75tmwgp.spack
==> Extracting util-linux-uuid-2.38.1-xshts7x2hjr7km6cj4zr5rpxn75tmwgp from binary cache
==> util-linux-uuid: Successfully installed util-linux-uuid-2.38.1-xshts7x2hjr7km6cj4zr5rpxn75tmwgp
Search: 0.00s. Fetch: 0.01s. Install: 0.11s. Extract: 0.09s. Relocate: 0.01s. Total: 0.12s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/util-linux-uuid-2.38.1-xshts7x2hjr7km6cj4zr5rpxn75tmwgp
==> Installing re2c-2.2-aznyzrsgis6sugnpsivfawvk53eknaas [21/74]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-re2c-2.2-aznyzrsgis6sugnpsivfawvk53eknaas.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/re2c-2.2/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-re2c-2.2-aznyzrsgis6sugnpsivfawvk53eknaas.spack
==> Extracting re2c-2.2-aznyzrsgis6sugnpsivfawvk53eknaas from binary cache
==> re2c: Successfully installed re2c-2.2-aznyzrsgis6sugnpsivfawvk53eknaas
Search: 0.00s. Fetch: 0.02s. Install: 0.26s. Extract: 0.22s. Relocate: 0.03s. Total: 0.28s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/re2c-2.2-aznyzrsgis6sugnpsivfawvk53eknaas
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libxml2-2.10.3-s3vgaladuiim674rvdylwer4ktlfa2y4
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/readline-8.2-cb6x34ku73pjh3f4t7rmpthnxuumw25x
==> Installing autoconf-archive-2023.02.20-rq5jepflkcjrdarashhdmody3xoweq3x [24/74]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-autoconf-archive-2023.02.20-rq5jepflkcjrdarashhdmody3xoweq3x.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-rq5jepflkcjrdarashhdmody3xoweq3x.spack
==> Extracting autoconf-archive-2023.02.20-rq5jepflkcjrdarashhdmody3xoweq3x from binary cache
==> autoconf-archive: Successfully installed autoconf-archive-2023.02.20-rq5jepflkcjrdarashhdmody3xoweq3x
Search: 0.00s. Fetch: 0.01s. Install: 0.14s. Extract: 0.13s. Relocate: 0.01s. Total: 0.15s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/autoconf-archive-2023.02.20-rq5jepflkcjrdarashhdmody3xoweq3x
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/m4-1.4.19-sd3ytdel5rzykkjq2m3cwi4jccl5xwi7
==> Installing pcre2-10.43-vxov4myt27vqhloovg7ifr4irtnofmz3 [26/74]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-pcre2-10.43-vxov4myt27vqhloovg7ifr4irtnofmz3.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/pcre2-10.43/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-pcre2-10.43-vxov4myt27vqhloovg7ifr4irtnofmz3.spack
==> Extracting pcre2-10.43-vxov4myt27vqhloovg7ifr4irtnofmz3 from binary cache
==> pcre2: Successfully installed pcre2-10.43-vxov4myt27vqhloovg7ifr4irtnofmz3
Search: 0.00s. Fetch: 0.01s. Install: 0.11s. Extract: 0.09s. Relocate: 0.01s. Total: 0.12s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/pcre2-10.43-vxov4myt27vqhloovg7ifr4irtnofmz3
==> Installing lz4-1.9.4-js6n6n2g3audti3mwxdvzeq2toonpcrg [27/74]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-lz4-1.9.4-js6n6n2g3audti3mwxdvzeq2toonpcrg.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/lz4-1.9.4/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-lz4-1.9.4-js6n6n2g3audti3mwxdvzeq2toonpcrg.spack
==> Extracting lz4-1.9.4-js6n6n2g3audti3mwxdvzeq2toonpcrg from binary cache
==> lz4: Successfully installed lz4-1.9.4-js6n6n2g3audti3mwxdvzeq2toonpcrg
Search: 0.00s. Fetch: 0.01s. Install: 0.04s. Extract: 0.02s. Relocate: 0.01s. Total: 0.05s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/lz4-1.9.4-js6n6n2g3audti3mwxdvzeq2toonpcrg
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/pigz-2.8-gk55zt73c5ekv3iogqn4lo4r66tuzv5z
==> Installing libmd-1.0.4-evfudm6c3pczs4mtbpzogrozhvxrtffa [29/74]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-libmd-1.0.4-evfudm6c3pczs4mtbpzogrozhvxrtffa.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-evfudm6c3pczs4mtbpzogrozhvxrtffa.spack
==> Extracting libmd-1.0.4-evfudm6c3pczs4mtbpzogrozhvxrtffa from binary cache
==> libmd: Successfully installed libmd-1.0.4-evfudm6c3pczs4mtbpzogrozhvxrtffa
Search: 0.00s. Fetch: 0.01s. Install: 0.04s. Extract: 0.02s. Relocate: 0.01s. Total: 0.05s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libmd-1.0.4-evfudm6c3pczs4mtbpzogrozhvxrtffa
==> Installing pdsh-2.31-qdpmd2nfdbkr36k2v7b6firjiwsblo3j [30/74]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-pdsh-2.31-qdpmd2nfdbkr36k2v7b6firjiwsblo3j.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/pdsh-2.31/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-pdsh-2.31-qdpmd2nfdbkr36k2v7b6firjiwsblo3j.spack
==> Extracting pdsh-2.31-qdpmd2nfdbkr36k2v7b6firjiwsblo3j from binary cache
==> pdsh: Successfully installed pdsh-2.31-qdpmd2nfdbkr36k2v7b6firjiwsblo3j
Search: 0.00s. Fetch: 0.01s. Install: 0.03s. Extract: 0.01s. Relocate: 0.01s. Total: 0.04s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/pdsh-2.31-qdpmd2nfdbkr36k2v7b6firjiwsblo3j
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/nghttp2-1.57.0-l4jcye63aj5ju2xanoilysqe7lacl5yl
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/bzip2-1.0.8-w3nrdq4zswhvsa6oajnk42ozoswkhb33
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/berkeley-db-18.1.40-br27jq6mkoumsbtdldgzcm3lw5zqjvel
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libevent-2.1.12-qmgnv2nhjkya6hizkyd27akgc5uamwvx
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libpciaccess-0.17-3i3i255rigqdxrsszbhf6mu3k3poii6p
==> Installing sqlite-3.43.2-ejzddmpttxpjnxftj7elafkyrzrfihna [36/74]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-sqlite-3.43.2-ejzddmpttxpjnxftj7elafkyrzrfihna.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/sqlite-3.43.2/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-sqlite-3.43.2-ejzddmpttxpjnxftj7elafkyrzrfihna.spack
==> Extracting sqlite-3.43.2-ejzddmpttxpjnxftj7elafkyrzrfihna from binary cache
==> sqlite: Successfully installed sqlite-3.43.2-ejzddmpttxpjnxftj7elafkyrzrfihna
Search: 0.00s. Fetch: 0.02s. Install: 0.28s. Extract: 0.25s. Relocate: 0.02s. Total: 0.30s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/sqlite-3.43.2-ejzddmpttxpjnxftj7elafkyrzrfihna
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gdbm-1.23-ohbrdtphnhbycgd6p3btrxzjbtkwiqn6
==> Installing libbsd-0.12.1-ca45y6kawcnoscyta2cacbrqsmhwhz4l [38/74]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-libbsd-0.12.1-ca45y6kawcnoscyta2cacbrqsmhwhz4l.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libbsd-0.12.1/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-libbsd-0.12.1-ca45y6kawcnoscyta2cacbrqsmhwhz4l.spack
==> Extracting libbsd-0.12.1-ca45y6kawcnoscyta2cacbrqsmhwhz4l from binary cache
==> libbsd: Successfully installed libbsd-0.12.1-ca45y6kawcnoscyta2cacbrqsmhwhz4l
Search: 0.00s. Fetch: 0.01s. Install: 0.08s. Extract: 0.07s. Relocate: 0.01s. Total: 0.09s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libbsd-0.12.1-ca45y6kawcnoscyta2cacbrqsmhwhz4l
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/curl-8.7.1-bawzanq2b4gackw6un7m2fkkjnaiylbz
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/tar-1.34-bk5hidphc2hnjtnv67xxv2azwjl26txp
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/hwloc-2.9.1-qeaglvh36rm22m2wl5mcwmlzjdt7noi2
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/perl-5.38.0-okr2qfjxgz4jc5xnkxwl74haxa33sf5w
==> Installing expat-2.6.2-qhjiz57tyjy7x6hszwgmj2yxxl36ejku [43/74]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-expat-2.6.2-qhjiz57tyjy7x6hszwgmj2yxxl36ejku.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/expat-2.6.2/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-expat-2.6.2-qhjiz57tyjy7x6hszwgmj2yxxl36ejku.spack
==> Extracting expat-2.6.2-qhjiz57tyjy7x6hszwgmj2yxxl36ejku from binary cache
==> expat: Successfully installed expat-2.6.2-qhjiz57tyjy7x6hszwgmj2yxxl36ejku
Search: 0.00s. Fetch: 0.01s. Install: 0.05s. Extract: 0.03s. Relocate: 0.01s. Total: 0.05s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/expat-2.6.2-qhjiz57tyjy7x6hszwgmj2yxxl36ejku
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/cmake-3.27.9-gnvkrt4xthkwiqwwvejt24bv4ftljvkw
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gettext-0.22.5-omjznijs2nj3zeeuerckiefjhootsur5
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/pmix-5.0.1-4o6gxsyq3ju2b7nx4z6gvm4uaegbghyp
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/automake-1.16.5-6liamd64ojf4yihwzdw6zn3pe3mhfxrx
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/autoconf-2.72-vcb35sxzbnxlnms3jxmmt44r2si7xuws
==> Installing json-c-0.16-ekwg76kbzkeqdhzsjmyzlz53illf6g65 [49/74]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-json-c-0.16-ekwg76kbzkeqdhzsjmyzlz53illf6g65.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/json-c-0.16/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-json-c-0.16-ekwg76kbzkeqdhzsjmyzlz53illf6g65.spack
==> Extracting json-c-0.16-ekwg76kbzkeqdhzsjmyzlz53illf6g65 from binary cache
==> json-c: Successfully installed json-c-0.16-ekwg76kbzkeqdhzsjmyzlz53illf6g65
Search: 0.00s. Fetch: 0.01s. Install: 0.04s. Extract: 0.02s. Relocate: 0.01s. Total: 0.05s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/json-c-0.16-ekwg76kbzkeqdhzsjmyzlz53illf6g65
==> Installing texinfo-7.0.3-sprd63khh5hqvp6v3dzlrg64be7c6vzs [50/74]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-texinfo-7.0.3-sprd63khh5hqvp6v3dzlrg64be7c6vzs.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/texinfo-7.0.3/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-texinfo-7.0.3-sprd63khh5hqvp6v3dzlrg64be7c6vzs.spack
==> Extracting texinfo-7.0.3-sprd63khh5hqvp6v3dzlrg64be7c6vzs from binary cache
==> texinfo: Successfully installed texinfo-7.0.3-sprd63khh5hqvp6v3dzlrg64be7c6vzs
Search: 0.00s. Fetch: 0.01s. Install: 0.23s. Extract: 0.19s. Relocate: 0.03s. Total: 0.25s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/texinfo-7.0.3-sprd63khh5hqvp6v3dzlrg64be7c6vzs
==> Installing elfutils-0.190-kchje7ry653j24dqo2qfllkrzu4x7fwy [51/74]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-elfutils-0.190-kchje7ry653j24dqo2qfllkrzu4x7fwy.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/elfutils-0.190/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-elfutils-0.190-kchje7ry653j24dqo2qfllkrzu4x7fwy.spack
==> Extracting elfutils-0.190-kchje7ry653j24dqo2qfllkrzu4x7fwy from binary cache
==> elfutils: Successfully installed elfutils-0.190-kchje7ry653j24dqo2qfllkrzu4x7fwy
Search: 0.00s. Fetch: 0.02s. Install: 0.32s. Extract: 0.26s. Relocate: 0.04s. Total: 0.33s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/elfutils-0.190-kchje7ry653j24dqo2qfllkrzu4x7fwy
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/krb5-1.20.1-w3lwbhdizlzuh7z6sjm6h22y6iylsvwo
==> Installing python-3.11.7-thvfh6quzflk7qp5ezcqh3icehqnhpqv [53/74]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-python-3.11.7-thvfh6quzflk7qp5ezcqh3icehqnhpqv.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/python-3.11.7/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-python-3.11.7-thvfh6quzflk7qp5ezcqh3icehqnhpqv.spack
==> Extracting python-3.11.7-thvfh6quzflk7qp5ezcqh3icehqnhpqv from binary cache
==> python: Successfully installed python-3.11.7-thvfh6quzflk7qp5ezcqh3icehqnhpqv
Search: 0.00s. Fetch: 0.09s. Install: 3.36s. Extract: 3.24s. Relocate: 0.11s. Total: 3.45s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/python-3.11.7-thvfh6quzflk7qp5ezcqh3icehqnhpqv
==> Installing gmp-6.2.1-g7mpsitd4paj3sttmj6qdebd3wpzhtk5 [54/74]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-gmp-6.2.1-g7mpsitd4paj3sttmj6qdebd3wpzhtk5.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gmp-6.2.1/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-gmp-6.2.1-g7mpsitd4paj3sttmj6qdebd3wpzhtk5.spack
==> Extracting gmp-6.2.1-g7mpsitd4paj3sttmj6qdebd3wpzhtk5 from binary cache
==> gmp: Successfully installed gmp-6.2.1-g7mpsitd4paj3sttmj6qdebd3wpzhtk5
Search: 0.00s. Fetch: 0.01s. Install: 0.06s. Extract: 0.04s. Relocate: 0.01s. Total: 0.07s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gmp-6.2.1-g7mpsitd4paj3sttmj6qdebd3wpzhtk5
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/openssh-9.7p1-3uvvdf2knzlj2h7jryuk7plf7nsqzzwa
==> Installing ninja-1.11.1-dghhi6imamajov655scekpzav2lp3shi [56/74]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-ninja-1.11.1-dghhi6imamajov655scekpzav2lp3shi.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/ninja-1.11.1/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-ninja-1.11.1-dghhi6imamajov655scekpzav2lp3shi.spack
==> Extracting ninja-1.11.1-dghhi6imamajov655scekpzav2lp3shi from binary cache
==> ninja: Successfully installed ninja-1.11.1-dghhi6imamajov655scekpzav2lp3shi
Search: 0.00s. Fetch: 0.01s. Install: 0.12s. Extract: 0.09s. Relocate: 0.01s. Total: 0.13s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/ninja-1.11.1-dghhi6imamajov655scekpzav2lp3shi
==> Installing python-venv-1.0-h2givklxk46oosxkfa6amiqisrmo2wt2 [57/74]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-python-venv-1.0-h2givklxk46oosxkfa6amiqisrmo2wt2.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/python-venv-1.0/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-python-venv-1.0-h2givklxk46oosxkfa6amiqisrmo2wt2.spack
==> Extracting python-venv-1.0-h2givklxk46oosxkfa6amiqisrmo2wt2 from binary cache
==> python-venv: Successfully installed python-venv-1.0-h2givklxk46oosxkfa6amiqisrmo2wt2
Search: 0.00s. Fetch: 0.01s. Install: 0.05s. Extract: 0.02s. Relocate: 0.01s. Total: 0.05s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/python-venv-1.0-h2givklxk46oosxkfa6amiqisrmo2wt2
==> Installing mpfr-4.2.1-ik5cu7polcmoqd535myvubs7zdkmls4o [58/74]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-mpfr-4.2.1-ik5cu7polcmoqd535myvubs7zdkmls4o.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-ik5cu7polcmoqd535myvubs7zdkmls4o.spack
==> Extracting mpfr-4.2.1-ik5cu7polcmoqd535myvubs7zdkmls4o from binary cache
==> mpfr: Successfully installed mpfr-4.2.1-ik5cu7polcmoqd535myvubs7zdkmls4o
Search: 0.00s. Fetch: 0.01s. Install: 0.12s. Extract: 0.09s. Relocate: 0.01s. Total: 0.13s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/mpfr-4.2.1-ik5cu7polcmoqd535myvubs7zdkmls4o
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/openmpi-5.0.3-4a67ev2psutyq5iowi6jh2e3wwwjzi66
==> Installing py-pip-23.1.2-5dkwvch4vpaczw2vipiyarf46ckejh4l [60/74]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-py-pip-23.1.2-5dkwvch4vpaczw2vipiyarf46ckejh4l.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/py-pip-23.1.2/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-py-pip-23.1.2-5dkwvch4vpaczw2vipiyarf46ckejh4l.spack
==> Extracting py-pip-23.1.2-5dkwvch4vpaczw2vipiyarf46ckejh4l from binary cache
==> py-pip: Successfully installed py-pip-23.1.2-5dkwvch4vpaczw2vipiyarf46ckejh4l
Search: 0.00s. Fetch: 0.01s. Install: 0.35s. Extract: 0.33s. Relocate: 0.01s. Total: 0.36s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/py-pip-23.1.2-5dkwvch4vpaczw2vipiyarf46ckejh4l
==> Installing gawk-5.3.0-pxluxlyxbsa62tfkr5dob3xvi2czg2fg [61/74]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-gawk-5.3.0-pxluxlyxbsa62tfkr5dob3xvi2czg2fg.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gawk-5.3.0/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-gawk-5.3.0-pxluxlyxbsa62tfkr5dob3xvi2czg2fg.spack
==> Extracting gawk-5.3.0-pxluxlyxbsa62tfkr5dob3xvi2czg2fg from binary cache
==> gawk: Successfully installed gawk-5.3.0-pxluxlyxbsa62tfkr5dob3xvi2czg2fg
Search: 0.00s. Fetch: 0.01s. Install: 0.11s. Extract: 0.08s. Relocate: 0.02s. Total: 0.12s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gawk-5.3.0-pxluxlyxbsa62tfkr5dob3xvi2czg2fg
==> Installing lwgrp-1.0.5-u4yiup5pakl5gxbbt3zvp2znqntgwruw [62/74]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-lwgrp-1.0.5-u4yiup5pakl5gxbbt3zvp2znqntgwruw.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/lwgrp-1.0.5/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-lwgrp-1.0.5-u4yiup5pakl5gxbbt3zvp2znqntgwruw.spack
==> Extracting lwgrp-1.0.5-u4yiup5pakl5gxbbt3zvp2znqntgwruw from binary cache
==> lwgrp: Successfully installed lwgrp-1.0.5-u4yiup5pakl5gxbbt3zvp2znqntgwruw
Search: 0.00s. Fetch: 0.01s. Install: 0.07s. Extract: 0.03s. Relocate: 0.03s. Total: 0.08s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/lwgrp-1.0.5-u4yiup5pakl5gxbbt3zvp2znqntgwruw
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/trilinos-15.1.1-is6uzcxlhhjasjyijies4jbanjzqr6nf
==> Installing py-wheel-0.41.2-jkjjqnwhmnj7lowtfpp3kvrqqdwpvrib [64/74]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-py-wheel-0.41.2-jkjjqnwhmnj7lowtfpp3kvrqqdwpvrib.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/py-wheel-0.41.2/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-py-wheel-0.41.2-jkjjqnwhmnj7lowtfpp3kvrqqdwpvrib.spack
==> Extracting py-wheel-0.41.2-jkjjqnwhmnj7lowtfpp3kvrqqdwpvrib from binary cache
==> py-wheel: Successfully installed py-wheel-0.41.2-jkjjqnwhmnj7lowtfpp3kvrqqdwpvrib
Search: 0.00s. Fetch: 0.01s. Install: 0.06s. Extract: 0.04s. Relocate: 0.01s. Total: 0.07s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/py-wheel-0.41.2-jkjjqnwhmnj7lowtfpp3kvrqqdwpvrib
==> Installing py-setuptools-69.2.0-brurzqijd77eyuoqkb77lgptn5xjwgf7 [65/74]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-py-setuptools-69.2.0-brurzqijd77eyuoqkb77lgptn5xjwgf7.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/py-setuptools-69.2.0/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-py-setuptools-69.2.0-brurzqijd77eyuoqkb77lgptn5xjwgf7.spack
==> Extracting py-setuptools-69.2.0-brurzqijd77eyuoqkb77lgptn5xjwgf7 from binary cache
==> py-setuptools: Successfully installed py-setuptools-69.2.0-brurzqijd77eyuoqkb77lgptn5xjwgf7
Search: 0.00s. Fetch: 0.01s. Install: 0.19s. Extract: 0.16s. Relocate: 0.01s. Total: 0.20s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/py-setuptools-69.2.0-brurzqijd77eyuoqkb77lgptn5xjwgf7
==> Installing libgpg-error-1.49-uegdzban2sv6x36h6rzfqvpnt5l3farg [66/74]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-libgpg-error-1.49-uegdzban2sv6x36h6rzfqvpnt5l3farg.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libgpg-error-1.49/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-libgpg-error-1.49-uegdzban2sv6x36h6rzfqvpnt5l3farg.spack
==> Extracting libgpg-error-1.49-uegdzban2sv6x36h6rzfqvpnt5l3farg from binary cache
==> libgpg-error: Successfully installed libgpg-error-1.49-uegdzban2sv6x36h6rzfqvpnt5l3farg
Search: 0.00s. Fetch: 0.01s. Install: 0.08s. Extract: 0.05s. Relocate: 0.01s. Total: 0.08s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libgpg-error-1.49-uegdzban2sv6x36h6rzfqvpnt5l3farg
==> Installing dtcmp-1.1.4-dcm5c2dlcd23bdkzdbbvzikgh6qcdnzw [67/74]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-dtcmp-1.1.4-dcm5c2dlcd23bdkzdbbvzikgh6qcdnzw.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/dtcmp-1.1.4/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-dtcmp-1.1.4-dcm5c2dlcd23bdkzdbbvzikgh6qcdnzw.spack
==> Extracting dtcmp-1.1.4-dcm5c2dlcd23bdkzdbbvzikgh6qcdnzw from binary cache
==> dtcmp: Successfully installed dtcmp-1.1.4-dcm5c2dlcd23bdkzdbbvzikgh6qcdnzw
Search: 0.00s. Fetch: 0.01s. Install: 0.08s. Extract: 0.04s. Relocate: 0.03s. Total: 0.09s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/dtcmp-1.1.4-dcm5c2dlcd23bdkzdbbvzikgh6qcdnzw
==> Installing meson-1.3.2-hcx5grcsj5yew2puztifnpz4bjamvhks [68/74]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-meson-1.3.2-hcx5grcsj5yew2puztifnpz4bjamvhks.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/meson-1.3.2/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-meson-1.3.2-hcx5grcsj5yew2puztifnpz4bjamvhks.spack
==> Extracting meson-1.3.2-hcx5grcsj5yew2puztifnpz4bjamvhks from binary cache
==> meson: Successfully installed meson-1.3.2-hcx5grcsj5yew2puztifnpz4bjamvhks
Search: 0.00s. Fetch: 0.01s. Install: 0.21s. Extract: 0.18s. Relocate: 0.01s. Total: 0.22s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/meson-1.3.2-hcx5grcsj5yew2puztifnpz4bjamvhks
==> Installing libgcrypt-1.10.3-my2pdop2dmuxrvblc2ubxixwvdilx4ek [69/74]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-libgcrypt-1.10.3-my2pdop2dmuxrvblc2ubxixwvdilx4ek.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libgcrypt-1.10.3/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-libgcrypt-1.10.3-my2pdop2dmuxrvblc2ubxixwvdilx4ek.spack
==> Extracting libgcrypt-1.10.3-my2pdop2dmuxrvblc2ubxixwvdilx4ek from binary cache
==> libgcrypt: Successfully installed libgcrypt-1.10.3-my2pdop2dmuxrvblc2ubxixwvdilx4ek
Search: 0.00s. Fetch: 0.01s. Install: 0.09s. Extract: 0.06s. Relocate: 0.01s. Total: 0.10s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libgcrypt-1.10.3-my2pdop2dmuxrvblc2ubxixwvdilx4ek
==> Installing glib-2.78.3-sygfgcvo7qkbtvj2kw56gwnzxgue4kmc [70/74]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-glib-2.78.3-sygfgcvo7qkbtvj2kw56gwnzxgue4kmc.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/glib-2.78.3/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-glib-2.78.3-sygfgcvo7qkbtvj2kw56gwnzxgue4kmc.spack
==> Extracting glib-2.78.3-sygfgcvo7qkbtvj2kw56gwnzxgue4kmc from binary cache
==> glib: Successfully installed glib-2.78.3-sygfgcvo7qkbtvj2kw56gwnzxgue4kmc
Search: 0.00s. Fetch: 0.01s. Install: 0.56s. Extract: 0.28s. Relocate: 0.27s. Total: 0.58s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/glib-2.78.3-sygfgcvo7qkbtvj2kw56gwnzxgue4kmc
==> Installing munge-0.5.15-mubxfnohifcueym2ytfxztvx75w6mm4c [71/74]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-munge-0.5.15-mubxfnohifcueym2ytfxztvx75w6mm4c.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/munge-0.5.15/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-munge-0.5.15-mubxfnohifcueym2ytfxztvx75w6mm4c.spack
==> Extracting munge-0.5.15-mubxfnohifcueym2ytfxztvx75w6mm4c from binary cache
==> munge: Successfully installed munge-0.5.15-mubxfnohifcueym2ytfxztvx75w6mm4c
Search: 0.00s. Fetch: 0.01s. Install: 0.07s. Extract: 0.03s. Relocate: 0.02s. Total: 0.08s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/munge-0.5.15-mubxfnohifcueym2ytfxztvx75w6mm4c
==> Installing slurm-23-11-1-1-2u5klo7kw5vxd25zoufsnz5ndgihpkxy [72/74]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-slurm-23-11-1-1-2u5klo7kw5vxd25zoufsnz5ndgihpkxy.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/slurm-23-11-1-1/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-slurm-23-11-1-1-2u5klo7kw5vxd25zoufsnz5ndgihpkxy.spack
==> Extracting slurm-23-11-1-1-2u5klo7kw5vxd25zoufsnz5ndgihpkxy from binary cache
==> slurm: Successfully installed slurm-23-11-1-1-2u5klo7kw5vxd25zoufsnz5ndgihpkxy
Search: 0.00s. Fetch: 0.12s. Install: 2.71s. Extract: 2.56s. Relocate: 0.13s. Total: 2.83s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/slurm-23-11-1-1-2u5klo7kw5vxd25zoufsnz5ndgihpkxy
==> Installing libyogrt-1.33-6ru4dtf324bnp7bxn353m6epzy772nhk [73/74]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-libyogrt-1.33-6ru4dtf324bnp7bxn353m6epzy772nhk.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libyogrt-1.33/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-libyogrt-1.33-6ru4dtf324bnp7bxn353m6epzy772nhk.spack
==> Extracting libyogrt-1.33-6ru4dtf324bnp7bxn353m6epzy772nhk from binary cache
==> libyogrt: Successfully installed libyogrt-1.33-6ru4dtf324bnp7bxn353m6epzy772nhk
Search: 0.00s. Fetch: 0.01s. Install: 0.11s. Extract: 0.04s. Relocate: 0.04s. Total: 0.11s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libyogrt-1.33-6ru4dtf324bnp7bxn353m6epzy772nhk
==> Installing scr-2.0.0-ulfbgokc6wavo65tjloiixet7delsdsv [74/74]
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-scr-2.0.0-ulfbgokc6wavo65tjloiixet7delsdsv.spec.json.sig
==> Fetching file:///mirror/build_cache/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/scr-2.0.0/linux-ubuntu22.04-x86_64_v3-gcc-11.4.0-scr-2.0.0-ulfbgokc6wavo65tjloiixet7delsdsv.spack
==> Extracting scr-2.0.0-ulfbgokc6wavo65tjloiixet7delsdsv from binary cache
==> scr: Successfully installed scr-2.0.0-ulfbgokc6wavo65tjloiixet7delsdsv
Search: 0.00s. Fetch: 0.01s. Install: 0.18s. Extract: 0.08s. Relocate: 0.08s. Total: 0.19s
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/scr-2.0.0-ulfbgokc6wavo65tjloiixet7delsdsv
==> Updating view at /home/spack/spack/var/spack/environments/myproject2/.spack-env/view
$ spack find
==> In environment myproject2
==> 2 root specs
[+] scr [+] trilinos
==> Installed packages
-- linux-ubuntu22.04-x86_64_v3 / gcc@11.4.0 ---------------------
autoconf@2.72 libbsd@0.12.1 openssh@9.7p1
autoconf-archive@2023.02.20 libedit@3.1-20230828 openssl@3.3.0
automake@1.16.5 libevent@2.1.12 pcre2@10.43
berkeley-db@18.1.40 libffi@3.4.6 pdsh@2.31
bison@3.8.2 libgcrypt@1.10.3 perl@5.38.0
bzip2@1.0.8 libgpg-error@1.49 pigz@2.8
ca-certificates-mozilla@2023-05-30 libiconv@1.17 pkgconf@2.2.0
cmake@3.27.9 libmd@1.0.4 pmix@5.0.1
curl@8.7.1 libpciaccess@0.17 py-pip@23.1.2
diffutils@3.10 libsigsegv@2.14 py-setuptools@69.2.0
dtcmp@1.1.4 libtool@2.4.7 py-wheel@0.41.2
elfutils@0.190 libxcrypt@4.4.35 python@3.11.7
expat@2.6.2 libxml2@2.10.3 python-venv@1.0
findutils@4.9.0 libyogrt@1.33 re2c@2.2
gawk@5.3.0 lwgrp@1.0.5 readline@8.2
gcc-runtime@11.4.0 lz4@1.9.4 scr@2.0.0
gdbm@1.23 m4@1.4.19 slurm@23-11-1-1
gettext@0.22.5 meson@1.3.2 sqlite@3.43.2
glib@2.78.3 mpfr@4.2.1 tar@1.34
glibc@2.35 munge@0.5.15 texinfo@7.0.3
gmake@4.4.1 ncurses@6.5 trilinos@15.1.1
gmp@6.2.1 nghttp2@1.57.0 util-linux-uuid@2.38.1
hwloc@2.9.1 ninja@1.11.1 util-macros@1.19.3
json-c@0.16 numactl@2.0.14 xz@5.4.6
kokkos@4.2.01 openblas@0.3.26 zlib-ng@2.1.6
krb5@1.20.1 openmpi@5.0.3 zstd@1.5.6
==> 78 installed packages
Now we have two environments. The myproject
environment has tcl
and trilinos
while the myproject2
environment has scr
and trilinos
.
Now let’s try to uninstall trilinos
from myproject2
and review the
contents of the environment:
$ spack uninstall -y trilinos
==> Refusing to uninstall the following specs
-- linux-ubuntu22.04-x86_64_v3 / gcc@11.4.0 ---------------------
is6uzcx trilinos@15.1.1
==> The following environments still reference these specs:
myproject
==> Error: There are still dependents.
use `spack env remove` to remove environments
use `spack uninstall --force` to override
$ spack find
==> In environment myproject2
==> 2 root specs
[+] scr [+] trilinos
==> Installed packages
-- linux-ubuntu22.04-x86_64_v3 / gcc@11.4.0 ---------------------
autoconf@2.72 libbsd@0.12.1 openssh@9.7p1
autoconf-archive@2023.02.20 libedit@3.1-20230828 openssl@3.3.0
automake@1.16.5 libevent@2.1.12 pcre2@10.43
berkeley-db@18.1.40 libffi@3.4.6 pdsh@2.31
bison@3.8.2 libgcrypt@1.10.3 perl@5.38.0
bzip2@1.0.8 libgpg-error@1.49 pigz@2.8
ca-certificates-mozilla@2023-05-30 libiconv@1.17 pkgconf@2.2.0
cmake@3.27.9 libmd@1.0.4 pmix@5.0.1
curl@8.7.1 libpciaccess@0.17 py-pip@23.1.2
diffutils@3.10 libsigsegv@2.14 py-setuptools@69.2.0
dtcmp@1.1.4 libtool@2.4.7 py-wheel@0.41.2
elfutils@0.190 libxcrypt@4.4.35 python@3.11.7
expat@2.6.2 libxml2@2.10.3 python-venv@1.0
findutils@4.9.0 libyogrt@1.33 re2c@2.2
gawk@5.3.0 lwgrp@1.0.5 readline@8.2
gcc-runtime@11.4.0 lz4@1.9.4 scr@2.0.0
gdbm@1.23 m4@1.4.19 slurm@23-11-1-1
gettext@0.22.5 meson@1.3.2 sqlite@3.43.2
glib@2.78.3 mpfr@4.2.1 tar@1.34
glibc@2.35 munge@0.5.15 texinfo@7.0.3
gmake@4.4.1 ncurses@6.5 trilinos@15.1.1
gmp@6.2.1 nghttp2@1.57.0 util-linux-uuid@2.38.1
hwloc@2.9.1 ninja@1.11.1 util-macros@1.19.3
json-c@0.16 numactl@2.0.14 xz@5.4.6
kokkos@4.2.01 openblas@0.3.26 zlib-ng@2.1.6
krb5@1.20.1 openmpi@5.0.3 zstd@1.5.6
==> 78 installed packages
We can see that trilinos
won’t be uninstalled because it is still referenced
in another environment managed by spack. If we want to remove it from the roots
list we need to use spack remove
:
$ spack remove trilinos
==> trilinos has been removed from /home/spack/spack/var/spack/environments/myproject2/spack.yaml
$ spack find
==> In environment myproject2
==> 1 root specs
[+] scr
==> Installed packages
-- linux-ubuntu22.04-x86_64_v3 / gcc@11.4.0 ---------------------
autoconf@2.72 libbsd@0.12.1 openssh@9.7p1
autoconf-archive@2023.02.20 libedit@3.1-20230828 openssl@3.3.0
automake@1.16.5 libevent@2.1.12 pcre2@10.43
berkeley-db@18.1.40 libffi@3.4.6 pdsh@2.31
bison@3.8.2 libgcrypt@1.10.3 perl@5.38.0
bzip2@1.0.8 libgpg-error@1.49 pigz@2.8
ca-certificates-mozilla@2023-05-30 libiconv@1.17 pkgconf@2.2.0
cmake@3.27.9 libmd@1.0.4 pmix@5.0.1
curl@8.7.1 libpciaccess@0.17 py-pip@23.1.2
diffutils@3.10 libsigsegv@2.14 py-setuptools@69.2.0
dtcmp@1.1.4 libtool@2.4.7 py-wheel@0.41.2
elfutils@0.190 libxcrypt@4.4.35 python@3.11.7
expat@2.6.2 libxml2@2.10.3 python-venv@1.0
findutils@4.9.0 libyogrt@1.33 re2c@2.2
gawk@5.3.0 lwgrp@1.0.5 readline@8.2
gcc-runtime@11.4.0 lz4@1.9.4 scr@2.0.0
gdbm@1.23 m4@1.4.19 slurm@23-11-1-1
gettext@0.22.5 meson@1.3.2 sqlite@3.43.2
glib@2.78.3 mpfr@4.2.1 tar@1.34
glibc@2.35 munge@0.5.15 texinfo@7.0.3
gmake@4.4.1 ncurses@6.5 trilinos@15.1.1
gmp@6.2.1 nghttp2@1.57.0 util-linux-uuid@2.38.1
hwloc@2.9.1 ninja@1.11.1 util-macros@1.19.3
json-c@0.16 numactl@2.0.14 xz@5.4.6
kokkos@4.2.01 openblas@0.3.26 zlib-ng@2.1.6
krb5@1.20.1 openmpi@5.0.3 zstd@1.5.6
==> 78 installed packages
$ spack concretize
==> Updating view at /home/spack/spack/var/spack/environments/myproject2/.spack-env/view
$ spack find
==> In environment myproject2
==> 1 root specs
[+] scr
==> Installed packages
-- linux-ubuntu22.04-x86_64_v3 / gcc@11.4.0 ---------------------
autoconf@2.72 libbsd@0.12.1 openssh@9.7p1
autoconf-archive@2023.02.20 libedit@3.1-20230828 openssl@3.3.0
automake@1.16.5 libevent@2.1.12 pcre2@10.43
berkeley-db@18.1.40 libffi@3.4.6 pdsh@2.31
bison@3.8.2 libgcrypt@1.10.3 perl@5.38.0
bzip2@1.0.8 libgpg-error@1.49 pigz@2.8
ca-certificates-mozilla@2023-05-30 libiconv@1.17 pkgconf@2.2.0
cmake@3.27.9 libmd@1.0.4 pmix@5.0.1
curl@8.7.1 libpciaccess@0.17 py-pip@23.1.2
diffutils@3.10 libsigsegv@2.14 py-setuptools@69.2.0
dtcmp@1.1.4 libtool@2.4.7 py-wheel@0.41.2
elfutils@0.190 libxcrypt@4.4.35 python@3.11.7
expat@2.6.2 libxml2@2.10.3 python-venv@1.0
findutils@4.9.0 libyogrt@1.33 re2c@2.2
gawk@5.3.0 lwgrp@1.0.5 readline@8.2
gcc-runtime@11.4.0 lz4@1.9.4 scr@2.0.0
gdbm@1.23 m4@1.4.19 slurm@23-11-1-1
gettext@0.22.5 meson@1.3.2 sqlite@3.43.2
glib@2.78.3 mpfr@4.2.1 tar@1.34
glibc@2.35 munge@0.5.15 texinfo@7.0.3
gmake@4.4.1 ncurses@6.5 util-linux-uuid@2.38.1
gmp@6.2.1 nghttp2@1.57.0 util-macros@1.19.3
hwloc@2.9.1 ninja@1.11.1 xz@5.4.6
json-c@0.16 numactl@2.0.14 zlib-ng@2.1.6
krb5@1.20.1 openmpi@5.0.3 zstd@1.5.6
==> 75 installed packages
When the spec is first removed, we see that it is no longer a root but is still present in the installed specs. Once we reconcretize, the vestigial spec is removed. Now, it is no longer a root and will need to be re-added before being installed as part of this environment.
We know trilinos
is still needed for the myproject
environment, so
let’s switch back to confirm that it is still installed in that environment.
$ spack env activate myproject
$ spack find
==> In environment myproject
==> 2 root specs
[+] tcl [+] trilinos
==> Installed packages
-- linux-ubuntu22.04-x86_64_v3 / gcc@11.4.0 ---------------------
autoconf@2.72 kokkos@4.2.01 openssh@9.7p1
automake@1.16.5 krb5@1.20.1 openssl@3.3.0
berkeley-db@18.1.40 libedit@3.1-20230828 perl@5.38.0
bison@3.8.2 libevent@2.1.12 pigz@2.8
bzip2@1.0.8 libiconv@1.17 pkgconf@2.2.0
ca-certificates-mozilla@2023-05-30 libpciaccess@0.17 pmix@5.0.1
cmake@3.27.9 libsigsegv@2.14 readline@8.2
curl@8.7.1 libtool@2.4.7 tar@1.34
diffutils@3.10 libxcrypt@4.4.35 tcl@8.6.12
findutils@4.9.0 libxml2@2.10.3 trilinos@15.1.1
gcc-runtime@11.4.0 m4@1.4.19 util-macros@1.19.3
gdbm@1.23 ncurses@6.5 xz@5.4.6
gettext@0.22.5 nghttp2@1.57.0 zlib-ng@2.1.6
glibc@2.35 numactl@2.0.14 zstd@1.5.6
gmake@4.4.1 openblas@0.3.26
hwloc@2.9.1 openmpi@5.0.3
==> 46 installed packages
Phew! We see that myproject
still has trilinos
as a root
spec. Spack uses reference counting to ensure that we don’t remove
trilinos
when it is still needed by myproject
.
Note
Trilinos would only have been uninstalled by Spack if it were no longer needed by any environments or their package dependencies.
You can also uninstall a package and remove it from the environment
in one go with spack uninstall --remove trilinos
.
The spack.yaml
file
An environment is more than just a list of root specs. It includes
configuration settings that affect the way Spack behaves when the
environment is activated. So far, myproject
relies on configuration
defaults that can be overridden. Here we’ll look at how to add specs
and ensure all the packages depending on mpi
build with mpich
.
We can customize the selection of the mpi
provider using
concretization preferences
to change the behavior of the concretizer.
Let’s start by looking at the configuration of our environment using
spack config get
:
$ spack config get
# This is a Spack Environment file.
#
# It describes a set of packages to be installed, along with
# configuration settings.
spack:
# add package specs to the `specs` list
specs:
- tcl
- trilinos
view: true
concretizer:
unify: true
reuse: true
targets:
# Determine whether we want to target specific or generic
# microarchitectures. Valid values are: "microarchitectures" or "generic".
# An example of "microarchitectures" would be "skylake" or "bulldozer",
# while an example of "generic" would be "aarch64" or "x86_64_v4".
granularity: microarchitectures
# If "false" allow targets that are incompatible with the current host (for
# instance concretize with target "icelake" while running on "haswell").
# If "true" only allow targets that are compatible with the host.
host_compatible: true
# When "true" concretize root specs of environments together, so that each unique
# package in an environment corresponds to one concrete spec. This ensures
# environments can always be activated. When "false" perform concretization separately
# on each root spec, allowing different versions and variants of the same package in
# an environment.
duplicates:
# "none": allows a single node for any package in the DAG.
# "minimal": allows the duplication of 'build-tools' nodes only (e.g. py-setuptools, cmake etc.)
# "full" (experimental): allows separation of the entire build-tool stack (e.g. the entire "cmake" subDAG)
strategy: minimal
# Option to specify compatiblity between operating systems for reuse of compilers and packages
# Specified as a key: [list] where the key is the os that is being targeted, and the list contains the OS's
# it can reuse. Note this is a directional compatibility so mutual compatibility between two OS's
# requires two entries i.e. os_compatible: {sonoma: [monterey], monterey: [sonoma]}
os_compatible: {}
compilers:
- compiler:
spec: clang@=14.0.0
paths:
cc: /usr/bin/clang
cxx: /usr/bin/clang++
f77: null
fc: null
flags: {}
operating_system: ubuntu22.04
target: x86_64
modules: []
environment: {}
extra_rpaths: []
- compiler:
spec: gcc@=10.5.0
paths:
cc: /usr/bin/gcc-10
cxx: /usr/bin/g++-10
f77: /usr/bin/gfortran-10
fc: /usr/bin/gfortran-10
flags: {}
operating_system: ubuntu22.04
target: x86_64
modules: []
environment: {}
extra_rpaths: []
- compiler:
spec: gcc@=11.4.0
paths:
cc: /usr/bin/gcc
cxx: /usr/bin/g++
f77: /usr/bin/gfortran
fc: /usr/bin/gfortran
flags: {}
operating_system: ubuntu22.04
target: x86_64
modules: []
environment: {}
extra_rpaths: []
definitions: {}
develop: {}
mirrors:
tutorial: /mirror
spack-public:
binary: false
url: https://mirror.spack.io
repos:
- $spack/var/spack/repos/builtin
packages:
all:
target: [x86_64_v3]
compiler: [gcc, clang, oneapi, xl, nag, fj, aocc]
providers:
awk: [gawk]
armci: [armcimpi]
blas: [openblas, amdblis]
D: [ldc]
daal: [intel-oneapi-daal]
elf: [elfutils]
fftw-api: [fftw, amdfftw]
flame: [libflame, amdlibflame]
fortran-rt: [gcc-runtime, intel-oneapi-runtime]
fuse: [libfuse]
gl: [glx, osmesa]
glu: [mesa-glu, openglu]
golang: [go, gcc]
go-or-gccgo-bootstrap: [go-bootstrap, gcc]
iconv: [libiconv]
ipp: [intel-oneapi-ipp]
java: [openjdk, jdk, ibm-java]
jpeg: [libjpeg-turbo, libjpeg]
lapack: [openblas, amdlibflame]
libc: [glibc, musl]
libgfortran: [gcc-runtime]
libglx: [mesa+glx]
libifcore: [intel-oneapi-runtime]
libllvm: [llvm]
lua-lang: [lua, lua-luajit-openresty, lua-luajit]
luajit: [lua-luajit-openresty, lua-luajit]
mariadb-client: [mariadb-c-client, mariadb]
mkl: [intel-oneapi-mkl]
mpe: [mpe2]
mpi: [openmpi, mpich]
mysql-client: [mysql, mariadb-c-client]
opencl: [pocl]
onedal: [intel-oneapi-dal]
pbs: [openpbs, torque]
pil: [py-pillow]
pkgconfig: [pkgconf, pkg-config]
qmake: [qt-base, qt]
rpc: [libtirpc]
scalapack: [netlib-scalapack, amdscalapack]
sycl: [hipsycl]
szip: [libaec, libszip]
tbb: [intel-tbb]
unwind: [libunwind]
uuid: [util-linux-uuid, libuuid]
xxd: [xxd-standalone, vim]
yacc: [bison, byacc]
ziglang: [zig]
zlib-api: [zlib-ng+compat, zlib]
permissions:
read: world
write: user
iconv:
require: [libiconv]
modules:
prefix_inspections:
./bin:
- PATH
./man:
- MANPATH
./share/man:
- MANPATH
./share/aclocal:
- ACLOCAL_PATH
./lib/pkgconfig:
- PKG_CONFIG_PATH
./lib64/pkgconfig:
- PKG_CONFIG_PATH
./share/pkgconfig:
- PKG_CONFIG_PATH
./:
- CMAKE_PREFIX_PATH
# These are configurations for the module set named "default"
default:
# Where to install modules
roots:
tcl: $spack/share/spack/modules
lmod: $spack/share/spack/lmod
# What type of modules to use ("tcl" and/or "lmod")
enable: []
tcl:
all:
autoload: direct
# Default configurations if lmod is enabled
lmod:
all:
autoload: direct
hierarchy:
- mpi
config:
suppress_gpg_warnings: true
install_tree:
root: $spack/opt/spack
projections:
all: '{architecture}/{compiler.name}-{compiler.version}/{name}-{version}-{hash}'
# install_tree can include an optional padded length (int or boolean)
# default is False (do not pad)
# if padded_length is True, Spack will pad as close to the system max path
# length as possible
# if padded_length is an integer, Spack will pad to that many characters,
# assuming it is higher than the length of the install_tree root.
# padded_length: 128
# Locations where templates should be found
template_dirs:
- $spack/share/spack/templates
# Directory where licenses should be located
license_dir: $spack/etc/spack/licenses
build_stage:
- $tempdir/$user/spack-stage
- $user_cache_path/stage
test_stage: $user_cache_path/test
source_cache: $spack/var/spack/cache
misc_cache: $user_cache_path/cache
connect_timeout: 10
verify_ssl: true
ssl_certs: $SSL_CERT_FILE
install_missing_compilers: false
checksum: true
deprecated: false
dirty: false
build_language: C
locks: true
url_fetch_method: urllib
ccache: false
concretizer: clingo
db_lock_timeout: 60
package_lock_timeout: null
shared_linking:
# Spack automatically embeds runtime search paths in ELF binaries for their
# dependencies. Their type can either be "rpath" or "runpath". For glibc, rpath is
# inherited and has precedence over LD_LIBRARY_PATH; runpath is not inherited
# and of lower precedence. DO NOT MIX these within the same install tree.
type: rpath
# (Experimental) Embed absolute paths of dependent libraries directly in ELF
# binaries to avoid runtime search. This can improve startup time of
# executables with many dependencies, in particular on slow filesystems.
bind: false
# Set to 'false' to allow installation on filesystems that doesn't allow setgid bit
# manipulation by unprivileged user (e.g. AFS)
allow_sgid: true
install_status: true
binary_index_ttl: 600
flags:
# Whether to keep -Werror flags active in package builds.
keep_werror: none
# A mapping of aliases that can be used to define new commands. For instance,
# `sp: spec -I` will define a new command `sp` that will execute `spec` with
# the `-I` argument. Aliases cannot override existing commands.
aliases:
concretise: concretize
containerise: containerize
rm: remove
debug: false
build_jobs: 4
upstreams: {}
bootstrap:
enable: true
root: $user_cache_path/bootstrap
sources:
- name: github-actions-v0.5
metadata: $spack/share/spack/bootstrap/github-actions-v0.5
- name: github-actions-v0.4
metadata: $spack/share/spack/bootstrap/github-actions-v0.4
- name: spack-install
metadata: $spack/share/spack/bootstrap/spack-install
trusted:
# By default we trust bootstrapping from sources and from binaries
# produced on Github via the workflow
github-actions-v0.5: true
github-actions-v0.4: true
spack-install: true
ci: {}
cdash: {}
The output shows the special spack.yaml
configuration file that Spack
uses to store the environment configuration.
There are several important parts of this file:
specs:
: the list of specs to installview:
: this controls whether the environment has a view. You can set it tofalse
to disable view generation.concretizer:unify:
: This controls how the specs in the environment are concretized.
The specs
list should look familiar; these are the specs we’ve been
modifying with spack add
.
concretizer:unify:true
, the default, means that they are concretized
together, so that there is only one version of each package in the
environment. Other options for unify
are false
and when_possible
.
false
means that the specs are concretized independently, so that
there may be multiple versions of the same package in the environment.
when_possible
lies between those options. In this case, Spack will unify
as many packages in the environment, but will not fail if it cannot unify
all of them.
Editing environment configuration
Note
Before proceeding, make sure your EDITOR
environment variable
is set to the path of your preferred text editor.
Let’s edit spack.yaml
to require mpich
as our mpi
provider
using spack config edit
.
You should now have the above file open in your editor. Change it
to include the packages:mpi:require
entry below:
# This is a Spack Environment file.
#
# It describes a set of packages to be installed, along with
# configuration settings.
spack:
packages:
mpi:
require: [mpich]
# add package specs to the `specs` list
specs: [tcl, trilinos]
Note
We introduce this here to show you how environment configuration can affect concretization. Configuration options are covered in much more detail in the configuration tutorial.
We’ve only scratched the surface here by requiring a specific
mpi
provider for packages depending on mpi
. There are many
other customizations you can make to an environment.
Refer to the links at the end of this section for more information.
Re-concretizing the environment
You may need to re-install packages in the environment after making significant changes to the configuration, such as changing virtual providers. This can be accomplished by forcing Spack to re-concretize the environment and re-install the specs.
For example, the packages installed in our myproject
environment
are now out of sync with our new configuration since we already
installed part of the environment with openmpi
. Suppose we want
to install everything in myproject
with mpich
.
Let’s run spack concretize --force
(or -f
in short) to make
Spack re-concretize all the environment’s specs:
$ spack concretize --force
==> Concretized tcl
[+] dpakck4 tcl@8.6.12%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] f47qm6q ^gcc-runtime@11.4.0%gcc@11.4.0 build_system=generic arch=linux-ubuntu22.04-x86_64_v3
[e] a7drdl4 ^glibc@2.35%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] qfrotcc ^gmake@4.4.1%gcc@11.4.0~guile build_system=generic arch=linux-ubuntu22.04-x86_64_v3
[+] xqtp62n ^zlib-ng@2.1.6%gcc@11.4.0+compat+new_strategies+opt+pic+shared build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
==> Concretized trilinos
- 7t6oj7j trilinos@15.1.1%gcc@11.4.0~adelus~adios2+amesos+amesos2+anasazi+aztec~basker+belos~boost~chaco~complex~cuda~cuda_rdc~debug~dtk+epetra+epetraext~epetraextbtf~epetraextexperimental~epetraextgraphreorderings~exodus+explicit_template_instantiation~float+fortran~gtest+hdf5~hypre+ifpack+ifpack2~intrepid~intrepid2~ipo~isorropia+kokkos~mesquite~minitensor+ml+mpi+muelu~mumps~nox~openmp~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
[+] gnvkrt4 ^cmake@3.27.9%gcc@11.4.0~doc+ncurses+ownlibs build_system=generic build_type=Release arch=linux-ubuntu22.04-x86_64_v3
[+] bawzanq ^curl@8.7.1%gcc@11.4.0~gssapi~ldap~libidn2~librtmp~libssh~libssh2+nghttp2 build_system=autotools libs=shared,static tls=openssl arch=linux-ubuntu22.04-x86_64_v3
[+] l4jcye6 ^nghttp2@1.57.0%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] njmgt4r ^diffutils@3.10%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] 7zs2o3j ^openssl@3.3.0%gcc@11.4.0~docs+shared build_system=generic certs=mozilla arch=linux-ubuntu22.04-x86_64_v3
[+] yw5x67u ^ca-certificates-mozilla@2023-05-30%gcc@11.4.0 build_system=generic arch=linux-ubuntu22.04-x86_64_v3
[+] gk4xs2i ^ncurses@6.5%gcc@11.4.0~symlinks+termlib abi=none build_system=autotools patches=7a351bc arch=linux-ubuntu22.04-x86_64_v3
[+] xqtp62n ^zlib-ng@2.1.6%gcc@11.4.0+compat+new_strategies+opt+pic+shared build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] f47qm6q ^gcc-runtime@11.4.0%gcc@11.4.0 build_system=generic arch=linux-ubuntu22.04-x86_64_v3
[e] a7drdl4 ^glibc@2.35%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] qfrotcc ^gmake@4.4.1%gcc@11.4.0~guile build_system=generic arch=linux-ubuntu22.04-x86_64_v3
- ij3oein ^hdf5@1.14.3%gcc@11.4.0~cxx~fortran+hl~ipo~java~map+mpi+shared~subfiling~szip~threadsafe+tools api=default build_system=cmake build_type=Release generator=make patches=82088c8 arch=linux-ubuntu22.04-x86_64_v3
[+] h3x3l7s ^pkgconf@2.2.0%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] qeaglvh ^hwloc@2.9.1%gcc@11.4.0~cairo~cuda~gl~libudev+libxml2~netloc~nvml~oneapi-level-zero~opencl+pci~rocm build_system=autotools libs=shared,static arch=linux-ubuntu22.04-x86_64_v3
[+] 3i3i255 ^libpciaccess@0.17%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] uwrcuds ^libtool@2.4.7%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] egkyddp ^util-macros@1.19.3%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] s3vgala ^libxml2@2.10.3%gcc@11.4.0+pic~python+shared build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] bj46qor ^libiconv@1.17%gcc@11.4.0 build_system=autotools libs=shared,static arch=linux-ubuntu22.04-x86_64_v3
[+] syttnnt ^xz@5.4.6%gcc@11.4.0~pic build_system=autotools libs=shared,static arch=linux-ubuntu22.04-x86_64_v3
[+] iuiymnm ^kokkos@4.2.01%gcc@11.4.0~aggressive_vectorization~compiler_warnings~cuda~debug~debug_bounds_check~debug_dualview_modify_check~deprecated_code~examples~hpx~hpx_async_dispatch~hwloc~ipo~memkind~numactl~openmp~openmptarget~pic~rocm+serial+shared~sycl~tests~threads~tuning~wrapper build_system=cmake build_type=Release cxxstd=17 generator=make intel_gpu_arch=none arch=linux-ubuntu22.04-x86_64_v3
- zejicxu ^mpich@4.2.1%gcc@11.4.0~argobots~cuda+fortran+hwloc+hydra+libxml2+pci~rocm+romio~slurm~vci~verbs+wrapperrpath~xpmem build_system=autotools datatype-engine=auto device=ch4 netmod=ofi pmi=default arch=linux-ubuntu22.04-x86_64_v3
[+] v4yzc2w ^findutils@4.9.0%gcc@11.4.0 build_system=autotools patches=440b954 arch=linux-ubuntu22.04-x86_64_v3
- 3z7q5qf ^libfabric@1.21.0%gcc@11.4.0~debug~kdreg~uring build_system=autotools fabrics=sockets,tcp,udp arch=linux-ubuntu22.04-x86_64_v3
- 75av2rc ^yaksa@0.3%gcc@11.4.0~cuda~rocm build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] vcb35sx ^autoconf@2.72%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] 6liamd6 ^automake@1.16.5%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] sd3ytde ^m4@1.4.19%gcc@11.4.0+sigsegv build_system=autotools patches=9dc5fbd,bfdffa7 arch=linux-ubuntu22.04-x86_64_v3
[+] jwy3fyz ^libsigsegv@2.14%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] thvfh6q ^python@3.11.7%gcc@11.4.0+bz2+crypt+ctypes+dbm~debug+libxml2+lzma~nis~optimizations+pic+pyexpat+pythoncmd+readline+shared+sqlite3+ssl~tkinter+uuid+zlib build_system=generic patches=13fa8bf,b0615b2,ebdca64,f2fd060 arch=linux-ubuntu22.04-x86_64_v3
[+] qhjiz57 ^expat@2.6.2%gcc@11.4.0+libbsd build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] ca45y6k ^libbsd@0.12.1%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] evfudm6 ^libmd@1.0.4%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] omjznij ^gettext@0.22.5%gcc@11.4.0+bzip2+curses+git~libunistring+libxml2+pic+shared+tar+xz build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] bk5hidp ^tar@1.34%gcc@11.4.0 build_system=autotools zip=pigz arch=linux-ubuntu22.04-x86_64_v3
[+] gk55zt7 ^pigz@2.8%gcc@11.4.0 build_system=makefile arch=linux-ubuntu22.04-x86_64_v3
[+] ew3aaos ^zstd@1.5.6%gcc@11.4.0+programs build_system=makefile compression=none libs=shared,static arch=linux-ubuntu22.04-x86_64_v3
[+] dcinbzl ^libffi@3.4.6%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] ue2bwi7 ^libxcrypt@4.4.35%gcc@11.4.0~obsolete_api build_system=autotools patches=4885da3 arch=linux-ubuntu22.04-x86_64_v3
[+] cb6x34k ^readline@8.2%gcc@11.4.0 build_system=autotools patches=bbf97f1 arch=linux-ubuntu22.04-x86_64_v3
[+] ejzddmp ^sqlite@3.43.2%gcc@11.4.0+column_metadata+dynamic_extensions+fts~functions+rtree build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] xshts7x ^util-linux-uuid@2.38.1%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] 7oujjun ^openblas@0.3.26%gcc@11.4.0~bignuma~consistent_fpcsr+dynamic_dispatch+fortran~ilp64+locking+pic+shared build_system=makefile symbol_suffix=none threads=none arch=linux-ubuntu22.04-x86_64_v3
[+] okr2qfj ^perl@5.38.0%gcc@11.4.0+cpanm+opcode+open+shared+threads build_system=generic patches=714e4d1 arch=linux-ubuntu22.04-x86_64_v3
[+] br27jq6 ^berkeley-db@18.1.40%gcc@11.4.0+cxx~docs+stl build_system=autotools patches=26090f4,b231fcc arch=linux-ubuntu22.04-x86_64_v3
[+] w3nrdq4 ^bzip2@1.0.8%gcc@11.4.0~debug~pic+shared build_system=generic arch=linux-ubuntu22.04-x86_64_v3
[+] ohbrdtp ^gdbm@1.23%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
==> Updating view at /home/spack/spack/var/spack/environments/myproject/.spack-env/view
All the specs are now concrete and ready to be installed with
mpich
as the MPI implementation.
Re-concretization is sometimes also necessary when creating an environment incrementally with unification enabled. Spack makes sure that already concretized specs in the environment are not modified when adding something new.
Adding and installing specs one by one leads to greedy
concretization. When you first install python
in an environment,
Spack will pick a recent version for it. If you then add py-numpy
,
it may be in conflict with the python
version already installed,
and fail to concretize:
$ spack env activate --temp
==> Created and activated temporary environment in /tmp/spack-ne_17kab
$ spack install --add python
==> Concretized python
[+] thvfh6q python@3.11.7%gcc@11.4.0+bz2+crypt+ctypes+dbm~debug+libxml2+lzma~nis~optimizations+pic+pyexpat+pythoncmd+readline+shared+sqlite3+ssl~tkinter+uuid+zlib build_system=generic patches=13fa8bf,b0615b2,ebdca64,f2fd060 arch=linux-ubuntu22.04-x86_64_v3
[+] w3nrdq4 ^bzip2@1.0.8%gcc@11.4.0~debug~pic+shared build_system=generic arch=linux-ubuntu22.04-x86_64_v3
[+] njmgt4r ^diffutils@3.10%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] qhjiz57 ^expat@2.6.2%gcc@11.4.0+libbsd build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] ca45y6k ^libbsd@0.12.1%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] evfudm6 ^libmd@1.0.4%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] f47qm6q ^gcc-runtime@11.4.0%gcc@11.4.0 build_system=generic arch=linux-ubuntu22.04-x86_64_v3
[+] ohbrdtp ^gdbm@1.23%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] omjznij ^gettext@0.22.5%gcc@11.4.0+bzip2+curses+git~libunistring+libxml2+pic+shared+tar+xz build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] bj46qor ^libiconv@1.17%gcc@11.4.0 build_system=autotools libs=shared,static arch=linux-ubuntu22.04-x86_64_v3
[+] s3vgala ^libxml2@2.10.3%gcc@11.4.0+pic~python+shared build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] bk5hidp ^tar@1.34%gcc@11.4.0 build_system=autotools zip=pigz arch=linux-ubuntu22.04-x86_64_v3
[+] gk55zt7 ^pigz@2.8%gcc@11.4.0 build_system=makefile arch=linux-ubuntu22.04-x86_64_v3
[+] ew3aaos ^zstd@1.5.6%gcc@11.4.0+programs build_system=makefile compression=none libs=shared,static arch=linux-ubuntu22.04-x86_64_v3
[e] a7drdl4 ^glibc@2.35%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] qfrotcc ^gmake@4.4.1%gcc@11.4.0~guile build_system=generic arch=linux-ubuntu22.04-x86_64_v3
[+] dcinbzl ^libffi@3.4.6%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] ue2bwi7 ^libxcrypt@4.4.35%gcc@11.4.0~obsolete_api build_system=autotools patches=4885da3 arch=linux-ubuntu22.04-x86_64_v3
[+] okr2qfj ^perl@5.38.0%gcc@11.4.0+cpanm+opcode+open+shared+threads build_system=generic patches=714e4d1 arch=linux-ubuntu22.04-x86_64_v3
[+] br27jq6 ^berkeley-db@18.1.40%gcc@11.4.0+cxx~docs+stl build_system=autotools patches=26090f4,b231fcc arch=linux-ubuntu22.04-x86_64_v3
[+] gk4xs2i ^ncurses@6.5%gcc@11.4.0~symlinks+termlib abi=none build_system=autotools patches=7a351bc arch=linux-ubuntu22.04-x86_64_v3
[+] 7zs2o3j ^openssl@3.3.0%gcc@11.4.0~docs+shared build_system=generic certs=mozilla arch=linux-ubuntu22.04-x86_64_v3
[+] yw5x67u ^ca-certificates-mozilla@2023-05-30%gcc@11.4.0 build_system=generic arch=linux-ubuntu22.04-x86_64_v3
[+] h3x3l7s ^pkgconf@2.2.0%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] cb6x34k ^readline@8.2%gcc@11.4.0 build_system=autotools patches=bbf97f1 arch=linux-ubuntu22.04-x86_64_v3
[+] ejzddmp ^sqlite@3.43.2%gcc@11.4.0+column_metadata+dynamic_extensions+fts~functions+rtree build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] xshts7x ^util-linux-uuid@2.38.1%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] syttnnt ^xz@5.4.6%gcc@11.4.0~pic build_system=autotools libs=shared,static arch=linux-ubuntu22.04-x86_64_v3
[+] xqtp62n ^zlib-ng@2.1.6%gcc@11.4.0+compat+new_strategies+opt+pic+shared build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] /usr (external glibc-2.35-a7drdl4tlx4bu3mzhor75pskvd3pdot6)
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gcc-runtime-11.4.0-f47qm6qeplqyahc4zhfpfdnf5mo6gxvd
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libxcrypt-4.4.35-ue2bwi7wgeqq7mwi2o6sp3vurj64clw4
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libmd-1.0.4-evfudm6c3pczs4mtbpzogrozhvxrtffa
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/xz-5.4.6-syttnntihi6n463mupmgl5e7kp5izxkz
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libiconv-1.17-bj46qorfdrbz67euv5g4s7isuniqjjpl
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/bzip2-1.0.8-w3nrdq4zswhvsa6oajnk42ozoswkhb33
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/ncurses-6.5-gk4xs2idegfiwoyaikamyhxkjrruxtxa
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/util-linux-uuid-2.38.1-xshts7x2hjr7km6cj4zr5rpxn75tmwgp
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libffi-3.4.6-dcinbzl32tc7qe73qoew4eulurpzvkig
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/zstd-1.5.6-ew3aaosbmf3ts2ylqgi4c6enfmf3m5dr
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/zlib-ng-2.1.6-xqtp62nft6pt5slbdljucwnkl5fxd6x4
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libbsd-0.12.1-ca45y6kawcnoscyta2cacbrqsmhwhz4l
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/readline-8.2-cb6x34ku73pjh3f4t7rmpthnxuumw25x
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/pigz-2.8-gk55zt73c5ekv3iogqn4lo4r66tuzv5z
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libxml2-2.10.3-s3vgaladuiim674rvdylwer4ktlfa2y4
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/openssl-3.3.0-7zs2o3jeizrvdjg2eklcfb6w7j7iy6qw
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/expat-2.6.2-qhjiz57tyjy7x6hszwgmj2yxxl36ejku
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/sqlite-3.43.2-ejzddmpttxpjnxftj7elafkyrzrfihna
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gdbm-1.23-ohbrdtphnhbycgd6p3btrxzjbtkwiqn6
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/tar-1.34-bk5hidphc2hnjtnv67xxv2azwjl26txp
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gettext-0.22.5-omjznijs2nj3zeeuerckiefjhootsur5
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/python-3.11.7-thvfh6quzflk7qp5ezcqh3icehqnhpqv
==> Updating view at /tmp/spack-9q1kv1jt/.spack-env/view
$ spack install --add py-numpy@1.20 2>&1 | tail -n1
internal_error("version weights must exist and be unique"). Couldn't concretize without changing the existing environment. If you are ok with changing it, try `spack concretize --force`. You could consider setting `concretizer:unify` to `when_possible` or `false` to allow multiple versions of some packages.
The solution is to re-concretize the environment as a whole,
which causes python
to downgrade to a version compatible
with py-numpy
:
$ spack add py-numpy@1.20
==> Adding py-numpy@1.20 to environment /tmp/spack-9q1kv1jt
$ spack concretize -f
==> Concretized python
- khdchwb python@3.9.18%gcc@11.4.0+bz2+crypt+ctypes+dbm~debug+libxml2+lzma~nis~optimizations+pic+pyexpat+pythoncmd+readline+shared+sqlite3+ssl~tkinter+uuid+zlib build_system=generic patches=0d98e93,4c24573,ebdca64,f2fd060 arch=linux-ubuntu22.04-x86_64_v3
[+] w3nrdq4 ^bzip2@1.0.8%gcc@11.4.0~debug~pic+shared build_system=generic arch=linux-ubuntu22.04-x86_64_v3
[+] njmgt4r ^diffutils@3.10%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] qhjiz57 ^expat@2.6.2%gcc@11.4.0+libbsd build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] ca45y6k ^libbsd@0.12.1%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] evfudm6 ^libmd@1.0.4%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] f47qm6q ^gcc-runtime@11.4.0%gcc@11.4.0 build_system=generic arch=linux-ubuntu22.04-x86_64_v3
[+] ohbrdtp ^gdbm@1.23%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] omjznij ^gettext@0.22.5%gcc@11.4.0+bzip2+curses+git~libunistring+libxml2+pic+shared+tar+xz build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] bj46qor ^libiconv@1.17%gcc@11.4.0 build_system=autotools libs=shared,static arch=linux-ubuntu22.04-x86_64_v3
[+] s3vgala ^libxml2@2.10.3%gcc@11.4.0+pic~python+shared build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] bk5hidp ^tar@1.34%gcc@11.4.0 build_system=autotools zip=pigz arch=linux-ubuntu22.04-x86_64_v3
[+] gk55zt7 ^pigz@2.8%gcc@11.4.0 build_system=makefile arch=linux-ubuntu22.04-x86_64_v3
[+] ew3aaos ^zstd@1.5.6%gcc@11.4.0+programs build_system=makefile compression=none libs=shared,static arch=linux-ubuntu22.04-x86_64_v3
[e] a7drdl4 ^glibc@2.35%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] qfrotcc ^gmake@4.4.1%gcc@11.4.0~guile build_system=generic arch=linux-ubuntu22.04-x86_64_v3
[+] dcinbzl ^libffi@3.4.6%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] ue2bwi7 ^libxcrypt@4.4.35%gcc@11.4.0~obsolete_api build_system=autotools patches=4885da3 arch=linux-ubuntu22.04-x86_64_v3
[+] okr2qfj ^perl@5.38.0%gcc@11.4.0+cpanm+opcode+open+shared+threads build_system=generic patches=714e4d1 arch=linux-ubuntu22.04-x86_64_v3
[+] br27jq6 ^berkeley-db@18.1.40%gcc@11.4.0+cxx~docs+stl build_system=autotools patches=26090f4,b231fcc arch=linux-ubuntu22.04-x86_64_v3
[+] gk4xs2i ^ncurses@6.5%gcc@11.4.0~symlinks+termlib abi=none build_system=autotools patches=7a351bc arch=linux-ubuntu22.04-x86_64_v3
[+] 7zs2o3j ^openssl@3.3.0%gcc@11.4.0~docs+shared build_system=generic certs=mozilla arch=linux-ubuntu22.04-x86_64_v3
[+] yw5x67u ^ca-certificates-mozilla@2023-05-30%gcc@11.4.0 build_system=generic arch=linux-ubuntu22.04-x86_64_v3
[+] h3x3l7s ^pkgconf@2.2.0%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] cb6x34k ^readline@8.2%gcc@11.4.0 build_system=autotools patches=bbf97f1 arch=linux-ubuntu22.04-x86_64_v3
[+] ejzddmp ^sqlite@3.43.2%gcc@11.4.0+column_metadata+dynamic_extensions+fts~functions+rtree build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] xshts7x ^util-linux-uuid@2.38.1%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] syttnnt ^xz@5.4.6%gcc@11.4.0~pic build_system=autotools libs=shared,static arch=linux-ubuntu22.04-x86_64_v3
[+] xqtp62n ^zlib-ng@2.1.6%gcc@11.4.0+compat+new_strategies+opt+pic+shared build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
==> Concretized py-numpy@1.20
- uhko5cs py-numpy@1.20.3%gcc@11.4.0 build_system=python_pip patches=802970a,873745d arch=linux-ubuntu22.04-x86_64_v3
[+] f47qm6q ^gcc-runtime@11.4.0%gcc@11.4.0 build_system=generic arch=linux-ubuntu22.04-x86_64_v3
[e] a7drdl4 ^glibc@2.35%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] 7oujjun ^openblas@0.3.26%gcc@11.4.0~bignuma~consistent_fpcsr+dynamic_dispatch+fortran~ilp64+locking+pic+shared build_system=makefile symbol_suffix=none threads=none arch=linux-ubuntu22.04-x86_64_v3
[+] qfrotcc ^gmake@4.4.1%gcc@11.4.0~guile build_system=generic arch=linux-ubuntu22.04-x86_64_v3
[+] okr2qfj ^perl@5.38.0%gcc@11.4.0+cpanm+opcode+open+shared+threads build_system=generic patches=714e4d1 arch=linux-ubuntu22.04-x86_64_v3
[+] br27jq6 ^berkeley-db@18.1.40%gcc@11.4.0+cxx~docs+stl build_system=autotools patches=26090f4,b231fcc arch=linux-ubuntu22.04-x86_64_v3
- mhnudem ^py-cython@0.29.36%gcc@11.4.0 build_system=python_pip patches=c4369ad arch=linux-ubuntu22.04-x86_64_v3
- 3qcgmqg ^py-pip@23.1.2%gcc@11.4.0 build_system=generic arch=linux-ubuntu22.04-x86_64_v3
- rz4a4nx ^py-setuptools@59.4.0%gcc@11.4.0 build_system=generic arch=linux-ubuntu22.04-x86_64_v3
- ni7f2p7 ^py-wheel@0.41.2%gcc@11.4.0 build_system=generic arch=linux-ubuntu22.04-x86_64_v3
- khdchwb ^python@3.9.18%gcc@11.4.0+bz2+crypt+ctypes+dbm~debug+libxml2+lzma~nis~optimizations+pic+pyexpat+pythoncmd+readline+shared+sqlite3+ssl~tkinter+uuid+zlib build_system=generic patches=0d98e93,4c24573,ebdca64,f2fd060 arch=linux-ubuntu22.04-x86_64_v3
[+] w3nrdq4 ^bzip2@1.0.8%gcc@11.4.0~debug~pic+shared build_system=generic arch=linux-ubuntu22.04-x86_64_v3
[+] njmgt4r ^diffutils@3.10%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] qhjiz57 ^expat@2.6.2%gcc@11.4.0+libbsd build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] ca45y6k ^libbsd@0.12.1%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] evfudm6 ^libmd@1.0.4%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] ohbrdtp ^gdbm@1.23%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] omjznij ^gettext@0.22.5%gcc@11.4.0+bzip2+curses+git~libunistring+libxml2+pic+shared+tar+xz build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] bj46qor ^libiconv@1.17%gcc@11.4.0 build_system=autotools libs=shared,static arch=linux-ubuntu22.04-x86_64_v3
[+] s3vgala ^libxml2@2.10.3%gcc@11.4.0+pic~python+shared build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] bk5hidp ^tar@1.34%gcc@11.4.0 build_system=autotools zip=pigz arch=linux-ubuntu22.04-x86_64_v3
[+] gk55zt7 ^pigz@2.8%gcc@11.4.0 build_system=makefile arch=linux-ubuntu22.04-x86_64_v3
[+] ew3aaos ^zstd@1.5.6%gcc@11.4.0+programs build_system=makefile compression=none libs=shared,static arch=linux-ubuntu22.04-x86_64_v3
[+] dcinbzl ^libffi@3.4.6%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] ue2bwi7 ^libxcrypt@4.4.35%gcc@11.4.0~obsolete_api build_system=autotools patches=4885da3 arch=linux-ubuntu22.04-x86_64_v3
[+] gk4xs2i ^ncurses@6.5%gcc@11.4.0~symlinks+termlib abi=none build_system=autotools patches=7a351bc arch=linux-ubuntu22.04-x86_64_v3
[+] 7zs2o3j ^openssl@3.3.0%gcc@11.4.0~docs+shared build_system=generic certs=mozilla arch=linux-ubuntu22.04-x86_64_v3
[+] yw5x67u ^ca-certificates-mozilla@2023-05-30%gcc@11.4.0 build_system=generic arch=linux-ubuntu22.04-x86_64_v3
[+] h3x3l7s ^pkgconf@2.2.0%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] cb6x34k ^readline@8.2%gcc@11.4.0 build_system=autotools patches=bbf97f1 arch=linux-ubuntu22.04-x86_64_v3
[+] ejzddmp ^sqlite@3.43.2%gcc@11.4.0+column_metadata+dynamic_extensions+fts~functions+rtree build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] xshts7x ^util-linux-uuid@2.38.1%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] syttnnt ^xz@5.4.6%gcc@11.4.0~pic build_system=autotools libs=shared,static arch=linux-ubuntu22.04-x86_64_v3
[+] xqtp62n ^zlib-ng@2.1.6%gcc@11.4.0+compat+new_strategies+opt+pic+shared build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
- xso577d ^python-venv@1.0%gcc@11.4.0 build_system=generic arch=linux-ubuntu22.04-x86_64_v3
==> Updating view at /tmp/spack-9q1kv1jt/.spack-env/view
Building in environments
Activated environments allow you to invoke any programs installed in them as if they were installed on the system. In this section we will take advantage of that feature.
Suppose you want to compile some MPI programs. We have an MPI
implementation installed in our myproject2
environment, so
mpicc
is available in our path. We can confirm this using
which
:
$ spack env activate myproject2
$ spack env status
==> In environment myproject2
$ which mpicc
/home/spack/spack/var/spack/environments/myproject2/.spack-env/view/bin/mpicc
As mentioned before, activating the environment sets a number of
environment variables. That includes variables like PATH
,
MANPATH
, and CMAKE_PREFIX_PATH
, which allows you to
easily find package executables and libraries installed in the environment.
Let’s look specifically at path-related environment variables using
env | grep PATH
:
$ env | grep PATH=
PKG_CONFIG_PATH=/home/spack/spack/var/spack/environments/myproject2/.spack-env/view/lib/pkgconfig:/home/spack/spack/var/spack/environments/myproject2/.spack-env/view/lib64/pkgconfig:/usr/share/pkgconfig:/home/spack/spack/var/spack/environments/myproject2/.spack-env/view/share/pkgconfig:.
ACLOCAL_PATH=/home/spack/spack/var/spack/environments/myproject2/.spack-env/view/share/aclocal:.
PATH=/home/spack/spack/var/spack/environments/myproject2/.spack-env/view/bin:/home/spack/spack/bin:/opt/spack/view/bin:/root/spack/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
MANPATH=/home/spack/spack/var/spack/environments/myproject2/.spack-env/view/share/man:/home/spack/spack/var/spack/environments/myproject2/.spack-env/view/man:/usr/share/man:.:
CMAKE_PREFIX_PATH=/home/spack/spack/var/spack/environments/myproject2/.spack-env/view:.
We can demonstrate use of these environment settings by building a really simple MPI program.
Let’s create a program called mpi-hello.c
that contains the following
code:
#include <stdio.h>
#include <mpi.h>
#include <zlib.h>
int main(int argc, char **argv) {
int rank;
MPI_Init(&argc, &argv);
MPI_Comm_rank(MPI_COMM_WORLD, &rank);
printf("Hello world from rank %d\n", rank);
if (rank == 0) {
printf("zlib version: %s\n", ZLIB_VERSION);
printf("zlib-ng version: %s\n", ZLIBNG_VERSION);
}
MPI_Finalize();
}
This program includes headers from mpi
and zlib
.
It also prints out a message from each MPI rank and the
version of zlib
.
Let’s build and run our program:
$ mpicc ./mpi-hello.c -I$(spack location -i zlib-ng)/include
$ mpirun -n 2 ./a.out
Hello world from rank 1
Hello world from rank 0
zlib version: 1.3.0.zlib-ng
zlib-ng version: 2.1.6
Notice that we only needed to pass the include path to the
compiler.
We also see that Hello world
is output for each of the ranks
and the version of zlib
used to build the program is printed.
We can confirm the version of zlib
used to build the program
is in our environment using spack find
:
$ spack find zlib-ng
==> In environment myproject2
==> 1 root specs
[+] scr
==> Installed packages
-- linux-ubuntu22.04-x86_64_v3 / gcc@11.4.0 ---------------------
zlib-ng@2.1.6
==> 1 installed package
Note that the reported version does match that of our installation.
Reproducing builds
Spack environments provide users with virtual environments similar to Python venv and Conda environments). The goal is to ensure packages in one environment are kept separate from those of another. These environments can be managed by Spack or independent. In either case, their environment files can be used to reproduce builds by other users and on other machines. Since those files are key to reproducing builds, let’s start with them.
Environment files
There are two key files tracking the contents of environments:
spack.yaml
and spack.lock
. The spack.yaml
file holds
the environment configuration that we previously edited through
spack config edit
. The spack.lock
file is automatically
generated during concretization.
The two files represent two fundamental concepts:
spack.yaml
: abstract specs and configuration to install; andspack.lock
: all fully concrete specs.
These files are intended to be used by developers and administrators to manage the environments in a reproducible way. We will cover their reuse later.
Note
Both environment files can be versioned in repositories, shared, and used to install the same set of software by different users and on other machines.
Managed versus independent environments
Environments are either Spack-managed or independent. Both types of environments are defined by their environment files. So far we have only created managed environments. This section describes their differences.
Managed environments are created using spack env create <name>
.
They are automatically created in the var/spack/environments
subdirectory and can be referenced by their names.
Independent environments can be created in one of two ways. First,
the Spack environment file(s) can be placed in any directory
(other than var/spack/environments
). Alternatively, you can
use spack env create -d <directory>
to specify the directory
(<directory>
) in which the files should reside. Independent
environments are not named.
Reviewing a managed environment
We created the myproject
environment earlier using spack env
create myproject
so let’s mainly focus on its environment files
in this section.
Earlier, when we changed the environment’s configuration using spack
config edit
, we were actually editing its spack.yaml
file. We
can move to the directory containing the file using spack cd
:
$ spack cd -e myproject
$ pwd
/home/spack/spack/var/spack/environments/myproject
$ ls
spack.lock spack.yaml
Notice that myproject
is a subdirectory of var/spack/environments
within the Spack installation making it a managed environment.
Consequently, it can be referenced by name. It will also show up
when running spack env list
:
$ spack env list
==> 2 environments
myproject myproject2
which indicates the active environment by highlighting it in green.
We can also see from the listing above that the current environment directory
contains both of the environment files: spack.yaml
and spack.lock
.
This is because spack.lock
was generated when we concretized
the environment.
If we cat
the spack.yaml
file, we’ll see the same specs and view
options previously shown by spack config get
:
$ cat spack.yaml
# This is a Spack Environment file.
#
# It describes a set of packages to be installed, along with
# configuration settings.
spack:
# add package specs to the `specs` list
specs:
- tcl
- trilinos
view: true
concretizer:
unify: true
packages:
mpi:
require: [mpich]
Creating an independent environment
Environments do not have to be created in or managed by a Spack instance. Rather, their environment files can be placed in any directory. This feature can be quite helpful for use cases such as environment-based software releases and CI/CD.
Let’s create an independent environment from scratch for a simple project:
$ cd
$ mkdir code
$ cd code
$ spack env create -d .
==> Created independent environment in: /home/spack/code
==> Activate with: spack env activate .
Notice that the command shows Spack created the environment, updated the view, and printed the command needed to activate it. As we can see in the activation command, since the environment is independent, it must be referenced by its directory path.
Let’s see what really happened with this command by listing the directory contents and looking at the configuration file:
$ ls
spack.yaml
$ cat spack.yaml
# This is a Spack Environment file.
#
# It describes a set of packages to be installed, along with
# configuration settings.
spack:
# add package specs to the `specs` list
specs: []
view: true
concretizer:
unify: true
Notice that Spack created a spack.yaml
file in the code directory.
Also note that the configuration file has an empty spec list (i.e.,
[]
). That list is intended to contain only the root specs of
the environment.
We can confirm that it is not a managed environment by running
spack env list
:
$ spack env list
==> 2 environments
myproject myproject2
and noting that the path does not appear in the output.
Now let’s add some specs to the environment. Suppose your project
depends on trilinos
and openmpi
. Add these
packages to the spec list using your favorite text editor. The
dash syntax for a YAML list is used in our example. Your package
should now contain the following entries:
# This is a Spack Environment file.
#
# It describes a set of packages to be installed, along with
# configuration settings.
spack:
# add package specs to the `specs` list
specs:
- trilinos
- openmpi
view: true
concretizer:
unify: true
Now activate the environment and install the packages:
$ spack env activate .
$ spack install
==> Concretized trilinos
[+] is6uzcx trilinos@15.1.1%gcc@11.4.0~adelus~adios2+amesos+amesos2+anasazi+aztec~basker+belos~boost~chaco~complex~cuda~cuda_rdc~debug~dtk+epetra+epetraext~epetraextbtf~epetraextexperimental~epetraextgraphreorderings~exodus+explicit_template_instantiation~float+fortran~gtest~hdf5~hypre+ifpack+ifpack2~intrepid~intrepid2~ipo~isorropia+kokkos~mesquite~minitensor+ml+mpi+muelu~mumps~nox~openmp~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
[+] gnvkrt4 ^cmake@3.27.9%gcc@11.4.0~doc+ncurses+ownlibs build_system=generic build_type=Release arch=linux-ubuntu22.04-x86_64_v3
[+] bawzanq ^curl@8.7.1%gcc@11.4.0~gssapi~ldap~libidn2~librtmp~libssh~libssh2+nghttp2 build_system=autotools libs=shared,static tls=openssl arch=linux-ubuntu22.04-x86_64_v3
[+] l4jcye6 ^nghttp2@1.57.0%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] njmgt4r ^diffutils@3.10%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] 7zs2o3j ^openssl@3.3.0%gcc@11.4.0~docs+shared build_system=generic certs=mozilla arch=linux-ubuntu22.04-x86_64_v3
[+] yw5x67u ^ca-certificates-mozilla@2023-05-30%gcc@11.4.0 build_system=generic arch=linux-ubuntu22.04-x86_64_v3
[+] gk4xs2i ^ncurses@6.5%gcc@11.4.0~symlinks+termlib abi=none build_system=autotools patches=7a351bc arch=linux-ubuntu22.04-x86_64_v3
[+] xqtp62n ^zlib-ng@2.1.6%gcc@11.4.0+compat+new_strategies+opt+pic+shared build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] f47qm6q ^gcc-runtime@11.4.0%gcc@11.4.0 build_system=generic arch=linux-ubuntu22.04-x86_64_v3
[e] a7drdl4 ^glibc@2.35%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] qfrotcc ^gmake@4.4.1%gcc@11.4.0~guile build_system=generic arch=linux-ubuntu22.04-x86_64_v3
[+] qeaglvh ^hwloc@2.9.1%gcc@11.4.0~cairo~cuda~gl~libudev+libxml2~netloc~nvml~oneapi-level-zero~opencl+pci~rocm build_system=autotools libs=shared,static arch=linux-ubuntu22.04-x86_64_v3
[+] 3i3i255 ^libpciaccess@0.17%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] egkyddp ^util-macros@1.19.3%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] s3vgala ^libxml2@2.10.3%gcc@11.4.0+pic~python+shared build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] bj46qor ^libiconv@1.17%gcc@11.4.0 build_system=autotools libs=shared,static arch=linux-ubuntu22.04-x86_64_v3
[+] syttnnt ^xz@5.4.6%gcc@11.4.0~pic build_system=autotools libs=shared,static arch=linux-ubuntu22.04-x86_64_v3
[+] h3x3l7s ^pkgconf@2.2.0%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] iuiymnm ^kokkos@4.2.01%gcc@11.4.0~aggressive_vectorization~compiler_warnings~cuda~debug~debug_bounds_check~debug_dualview_modify_check~deprecated_code~examples~hpx~hpx_async_dispatch~hwloc~ipo~memkind~numactl~openmp~openmptarget~pic~rocm+serial+shared~sycl~tests~threads~tuning~wrapper build_system=cmake build_type=Release cxxstd=17 generator=make intel_gpu_arch=none arch=linux-ubuntu22.04-x86_64_v3
[+] 7oujjun ^openblas@0.3.26%gcc@11.4.0~bignuma~consistent_fpcsr+dynamic_dispatch+fortran~ilp64+locking+pic+shared build_system=makefile symbol_suffix=none threads=none arch=linux-ubuntu22.04-x86_64_v3
[+] okr2qfj ^perl@5.38.0%gcc@11.4.0+cpanm+opcode+open+shared+threads build_system=generic patches=714e4d1 arch=linux-ubuntu22.04-x86_64_v3
[+] br27jq6 ^berkeley-db@18.1.40%gcc@11.4.0+cxx~docs+stl build_system=autotools patches=26090f4,b231fcc arch=linux-ubuntu22.04-x86_64_v3
[+] w3nrdq4 ^bzip2@1.0.8%gcc@11.4.0~debug~pic+shared build_system=generic arch=linux-ubuntu22.04-x86_64_v3
[+] ohbrdtp ^gdbm@1.23%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] cb6x34k ^readline@8.2%gcc@11.4.0 build_system=autotools patches=bbf97f1 arch=linux-ubuntu22.04-x86_64_v3
[+] 4a67ev2 ^openmpi@5.0.3%gcc@11.4.0~atomics~cuda~gpfs~internal-hwloc~internal-libevent~internal-pmix~java~legacylaunchers~lustre~memchecker~openshmem~orterunprefix~romio+rsh~static+vt+wrapper-rpath build_system=autotools fabrics=none romio-filesystem=none schedulers=none arch=linux-ubuntu22.04-x86_64_v3
[+] vcb35sx ^autoconf@2.72%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] sd3ytde ^m4@1.4.19%gcc@11.4.0+sigsegv build_system=autotools patches=9dc5fbd,bfdffa7 arch=linux-ubuntu22.04-x86_64_v3
[+] jwy3fyz ^libsigsegv@2.14%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] 6liamd6 ^automake@1.16.5%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] qmgnv2n ^libevent@2.1.12%gcc@11.4.0+openssl build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] uwrcuds ^libtool@2.4.7%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] v4yzc2w ^findutils@4.9.0%gcc@11.4.0 build_system=autotools patches=440b954 arch=linux-ubuntu22.04-x86_64_v3
[+] g46wb44 ^numactl@2.0.14%gcc@11.4.0 build_system=autotools patches=4e1d78c,62fc8a8,ff37630 arch=linux-ubuntu22.04-x86_64_v3
[+] 3uvvdf2 ^openssh@9.7p1%gcc@11.4.0+gssapi build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] w3lwbhd ^krb5@1.20.1%gcc@11.4.0+shared build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] b5e3naw ^bison@3.8.2%gcc@11.4.0~color build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] omjznij ^gettext@0.22.5%gcc@11.4.0+bzip2+curses+git~libunistring+libxml2+pic+shared+tar+xz build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] bk5hidp ^tar@1.34%gcc@11.4.0 build_system=autotools zip=pigz arch=linux-ubuntu22.04-x86_64_v3
[+] gk55zt7 ^pigz@2.8%gcc@11.4.0 build_system=makefile arch=linux-ubuntu22.04-x86_64_v3
[+] ew3aaos ^zstd@1.5.6%gcc@11.4.0+programs build_system=makefile compression=none libs=shared,static arch=linux-ubuntu22.04-x86_64_v3
[+] swglgxe ^libedit@3.1-20230828%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] ue2bwi7 ^libxcrypt@4.4.35%gcc@11.4.0~obsolete_api build_system=autotools patches=4885da3 arch=linux-ubuntu22.04-x86_64_v3
[+] 4o6gxsy ^pmix@5.0.1%gcc@11.4.0~docs+pmi_backwards_compatibility~python~restful build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
==> Concretized openmpi
[+] 4a67ev2 openmpi@5.0.3%gcc@11.4.0~atomics~cuda~gpfs~internal-hwloc~internal-libevent~internal-pmix~java~legacylaunchers~lustre~memchecker~openshmem~orterunprefix~romio+rsh~static+vt+wrapper-rpath build_system=autotools fabrics=none romio-filesystem=none schedulers=none arch=linux-ubuntu22.04-x86_64_v3
[+] vcb35sx ^autoconf@2.72%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] sd3ytde ^m4@1.4.19%gcc@11.4.0+sigsegv build_system=autotools patches=9dc5fbd,bfdffa7 arch=linux-ubuntu22.04-x86_64_v3
[+] njmgt4r ^diffutils@3.10%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] jwy3fyz ^libsigsegv@2.14%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] 6liamd6 ^automake@1.16.5%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] f47qm6q ^gcc-runtime@11.4.0%gcc@11.4.0 build_system=generic arch=linux-ubuntu22.04-x86_64_v3
[e] a7drdl4 ^glibc@2.35%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] qfrotcc ^gmake@4.4.1%gcc@11.4.0~guile build_system=generic arch=linux-ubuntu22.04-x86_64_v3
[+] qeaglvh ^hwloc@2.9.1%gcc@11.4.0~cairo~cuda~gl~libudev+libxml2~netloc~nvml~oneapi-level-zero~opencl+pci~rocm build_system=autotools libs=shared,static arch=linux-ubuntu22.04-x86_64_v3
[+] 3i3i255 ^libpciaccess@0.17%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] egkyddp ^util-macros@1.19.3%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] s3vgala ^libxml2@2.10.3%gcc@11.4.0+pic~python+shared build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] bj46qor ^libiconv@1.17%gcc@11.4.0 build_system=autotools libs=shared,static arch=linux-ubuntu22.04-x86_64_v3
[+] syttnnt ^xz@5.4.6%gcc@11.4.0~pic build_system=autotools libs=shared,static arch=linux-ubuntu22.04-x86_64_v3
[+] gk4xs2i ^ncurses@6.5%gcc@11.4.0~symlinks+termlib abi=none build_system=autotools patches=7a351bc arch=linux-ubuntu22.04-x86_64_v3
[+] qmgnv2n ^libevent@2.1.12%gcc@11.4.0+openssl build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] 7zs2o3j ^openssl@3.3.0%gcc@11.4.0~docs+shared build_system=generic certs=mozilla arch=linux-ubuntu22.04-x86_64_v3
[+] yw5x67u ^ca-certificates-mozilla@2023-05-30%gcc@11.4.0 build_system=generic arch=linux-ubuntu22.04-x86_64_v3
[+] uwrcuds ^libtool@2.4.7%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] v4yzc2w ^findutils@4.9.0%gcc@11.4.0 build_system=autotools patches=440b954 arch=linux-ubuntu22.04-x86_64_v3
[+] g46wb44 ^numactl@2.0.14%gcc@11.4.0 build_system=autotools patches=4e1d78c,62fc8a8,ff37630 arch=linux-ubuntu22.04-x86_64_v3
[+] 3uvvdf2 ^openssh@9.7p1%gcc@11.4.0+gssapi build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] w3lwbhd ^krb5@1.20.1%gcc@11.4.0+shared build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] b5e3naw ^bison@3.8.2%gcc@11.4.0~color build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] omjznij ^gettext@0.22.5%gcc@11.4.0+bzip2+curses+git~libunistring+libxml2+pic+shared+tar+xz build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] bk5hidp ^tar@1.34%gcc@11.4.0 build_system=autotools zip=pigz arch=linux-ubuntu22.04-x86_64_v3
[+] gk55zt7 ^pigz@2.8%gcc@11.4.0 build_system=makefile arch=linux-ubuntu22.04-x86_64_v3
[+] ew3aaos ^zstd@1.5.6%gcc@11.4.0+programs build_system=makefile compression=none libs=shared,static arch=linux-ubuntu22.04-x86_64_v3
[+] swglgxe ^libedit@3.1-20230828%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] ue2bwi7 ^libxcrypt@4.4.35%gcc@11.4.0~obsolete_api build_system=autotools patches=4885da3 arch=linux-ubuntu22.04-x86_64_v3
[+] okr2qfj ^perl@5.38.0%gcc@11.4.0+cpanm+opcode+open+shared+threads build_system=generic patches=714e4d1 arch=linux-ubuntu22.04-x86_64_v3
[+] br27jq6 ^berkeley-db@18.1.40%gcc@11.4.0+cxx~docs+stl build_system=autotools patches=26090f4,b231fcc arch=linux-ubuntu22.04-x86_64_v3
[+] w3nrdq4 ^bzip2@1.0.8%gcc@11.4.0~debug~pic+shared build_system=generic arch=linux-ubuntu22.04-x86_64_v3
[+] ohbrdtp ^gdbm@1.23%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] cb6x34k ^readline@8.2%gcc@11.4.0 build_system=autotools patches=bbf97f1 arch=linux-ubuntu22.04-x86_64_v3
[+] h3x3l7s ^pkgconf@2.2.0%gcc@11.4.0 build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] 4o6gxsy ^pmix@5.0.1%gcc@11.4.0~docs+pmi_backwards_compatibility~python~restful build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] xqtp62n ^zlib-ng@2.1.6%gcc@11.4.0+compat+new_strategies+opt+pic+shared build_system=autotools arch=linux-ubuntu22.04-x86_64_v3
[+] /usr (external glibc-2.35-a7drdl4tlx4bu3mzhor75pskvd3pdot6)
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gcc-runtime-11.4.0-f47qm6qeplqyahc4zhfpfdnf5mo6gxvd
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/zlib-ng-2.1.6-xqtp62nft6pt5slbdljucwnkl5fxd6x4
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/zstd-1.5.6-ew3aaosbmf3ts2ylqgi4c6enfmf3m5dr
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libxcrypt-4.4.35-ue2bwi7wgeqq7mwi2o6sp3vurj64clw4
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/numactl-2.0.14-g46wb44nglnflvkotzd5pv45f2lcm3mw
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/openblas-0.3.26-7oujjunznvxeef7agmqnkqzeelmtp44q
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/bzip2-1.0.8-w3nrdq4zswhvsa6oajnk42ozoswkhb33
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/kokkos-4.2.01-iuiymnmntab6geybvougsyhhnwibgxai
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libpciaccess-0.17-3i3i255rigqdxrsszbhf6mu3k3poii6p
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/ncurses-6.5-gk4xs2idegfiwoyaikamyhxkjrruxtxa
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/xz-5.4.6-syttnntihi6n463mupmgl5e7kp5izxkz
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libiconv-1.17-bj46qorfdrbz67euv5g4s7isuniqjjpl
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/pigz-2.8-gk55zt73c5ekv3iogqn4lo4r66tuzv5z
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/openssl-3.3.0-7zs2o3jeizrvdjg2eklcfb6w7j7iy6qw
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libedit-3.1-20230828-swglgxeckeajkjp4b7d66fbsyn6hjsdh
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libxml2-2.10.3-s3vgaladuiim674rvdylwer4ktlfa2y4
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/tar-1.34-bk5hidphc2hnjtnv67xxv2azwjl26txp
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/libevent-2.1.12-qmgnv2nhjkya6hizkyd27akgc5uamwvx
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/hwloc-2.9.1-qeaglvh36rm22m2wl5mcwmlzjdt7noi2
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/gettext-0.22.5-omjznijs2nj3zeeuerckiefjhootsur5
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/pmix-5.0.1-4o6gxsyq3ju2b7nx4z6gvm4uaegbghyp
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/krb5-1.20.1-w3lwbhdizlzuh7z6sjm6h22y6iylsvwo
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/openssh-9.7p1-3uvvdf2knzlj2h7jryuk7plf7nsqzzwa
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/openmpi-5.0.3-4a67ev2psutyq5iowi6jh2e3wwwjzi66
[+] /home/spack/spack/opt/spack/linux-ubuntu22.04-x86_64_v3/gcc-11.4.0/trilinos-15.1.1-is6uzcxlhhjasjyijies4jbanjzqr6nf
==> Updating view at /home/spack/code/.spack-env/view
Notice that Spack concretized the specs before installing them and their dependencies. It also updated the environment’s view. Since we already installed all these packages outside of the environment, their links were simply added to it.
Updating an installed environment
Spack supports tweaking an environment even after the initial specs are installed. You are free to add and remove specs just as you would outside of the environment using the command line interface as before.
For example, let’s add hdf5
and look at our file:
$ spack add hdf5@5.5.1
==> Adding hdf5@5.5.1 to environment /home/spack/code
$ cat spack.yaml
# This is a Spack Environment file.
#
# It describes a set of packages to be installed, along with
# configuration settings.
spack:
# add package specs to the `specs` list
specs:
- trilinos
- openmpi
- hdf5@5.5.1
view: true
concretizer:
unify: true
Notice that spack add
added the package to our active environment and
it appears in the configuration file’s spec list.
Note
You’ll need to run spack install
to install added packages
in your environment because spack add
only adds it to the
configuration.
Now use spack remove
to remove the spec from the configuration:
$ spack remove hdf5
==> hdf5 has been removed from /home/spack/code/spack.yaml
$ cat spack.yaml
# This is a Spack Environment file.
#
# It describes a set of packages to be installed, along with
# configuration settings.
spack:
# add package specs to the `specs` list
specs:
- trilinos
- openmpi
view: true
concretizer:
unify: true
and we see that the spec was removed from the spec list of our environment.
Note
You can also edit the spack.yaml
file directly instead of
using the spack add
and spack remove
commands.
Reviewing spack.lock
Now let’s turn our attention from the abstract to the concrete.
Our focus so far has been on the abstract environment configuration
represented by the spack.yaml
file. Once that file is concretized,
Spack generates a corresponding spack.lock
file representing
the full concretized state of the environment.
This file is intended to be a machine-readable representation of the
information needed to reproduce the build of an environment. As such,
it is written in json
, which is less readable than yaml
.
Let’s look at the top 30 lines of our current environment:
$ jq < spack.lock | head -30
{
"_meta": {
"file-type": "spack-lockfile",
"lockfile-version": 5,
"specfile-version": 4
},
"spack": {
"version": "0.22.1",
"type": "git",
"commit": "d66dce2d668a6234504594661506cdd1eaca4adc"
},
"roots": [
{
"hash": "is6uzcxlhhjasjyijies4jbanjzqr6nf",
"spec": "trilinos"
},
{
"hash": "4a67ev2psutyq5iowi6jh2e3wwwjzi66",
"spec": "openmpi"
}
],
"concrete_specs": {
"is6uzcxlhhjasjyijies4jbanjzqr6nf": {
"name": "trilinos",
"version": "15.1.1",
"arch": {
"platform": "linux",
"platform_os": "ubuntu22.04",
"target": "x86_64_v3"
},
While it is still readable, it consists of over 1900 lines of information representing the actual configurations for each of the environment’s packages.
Reproducing an environment
Now that we’ve described the contents of the environment files we can discuss how they can be used to reproduce environments. You may want to do this yourself on a different machine, or use an environment built by someone else. The process is the same in either case.
You can recreate an environment by passing either of the environment
files to spack env create
. The file you choose depends on whether
you want to approximate the build using the abstract specs or an exact
build based on the concrete specs.
Using spack.yaml
An approximate build is created using the spack.yaml
file. This
approach is relevant when we want to build the same specs on a new
platform, for example. It allows you to reproduce the environment
by preserving the abstract requirements in the file. However, the
software may actually build differently in part because the concretizer
may choose different dependencies.
Let’s use spack env create
to create an abstract environment from
the file that we’ll call abstract
:
$ spack env create abstract spack.yaml
==> Created environment abstract in: /home/spack/spack/var/spack/environments/abstract
==> Activate with: spack env activate abstract
Here we see that Spack created a managed environment with the name we provided.
And, since it is a newly created environment, it does not have any
installed specs yet as we can see from calling spack find
after activating the environment:
$ spack env activate abstract
$ spack find
==> In environment abstract
==> 2 root specs
- openmpi - trilinos
==> 0 installed packages
Notice that we have the same root specs as were listed in the spack.yaml
file.
Using spack.lock
The spack.lock
file is used for an exact reproduction of the
original build. It can replicate the build because it contains the
information for all the decisions made during concretization.
Now let’s create a concrete environment, called concrete
, from
the file:
$ spack env create concrete spack.lock
==> Created environment concrete in: /home/spack/spack/var/spack/environments/concrete
==> Activate with: spack env activate concrete
==> Updating view at /home/spack/spack/var/spack/environments/concrete/.spack-env/view
Here we see that Spack again created a managed environment with the provided name.
Since we created the environment from our spack.lock
file,
not only do we get the same root specs, all of the packages are
installed in the environment as we can see from calling
spack find
after activating the environment:
$ spack env activate concrete
$ spack find
==> In environment concrete
==> 2 root specs
[+] openmpi [+] trilinos
==> Installed packages
-- linux-ubuntu22.04-x86_64_v3 / gcc@11.4.0 ---------------------
autoconf@2.72 hwloc@2.9.1 openblas@0.3.26
automake@1.16.5 kokkos@4.2.01 openmpi@5.0.3
berkeley-db@18.1.40 krb5@1.20.1 openssh@9.7p1
bison@3.8.2 libedit@3.1-20230828 openssl@3.3.0
bzip2@1.0.8 libevent@2.1.12 perl@5.38.0
ca-certificates-mozilla@2023-05-30 libiconv@1.17 pigz@2.8
cmake@3.27.9 libpciaccess@0.17 pkgconf@2.2.0
curl@8.7.1 libsigsegv@2.14 pmix@5.0.1
diffutils@3.10 libtool@2.4.7 readline@8.2
findutils@4.9.0 libxcrypt@4.4.35 tar@1.34
gcc-runtime@11.4.0 libxml2@2.10.3 trilinos@15.1.1
gdbm@1.23 m4@1.4.19 util-macros@1.19.3
gettext@0.22.5 ncurses@6.5 xz@5.4.6
glibc@2.35 nghttp2@1.57.0 zlib-ng@2.1.6
gmake@4.4.1 numactl@2.0.14 zstd@1.5.6
==> 45 installed packages
Note
Use of spack.lock
to reproduce a build (currently) requires you
to be on the same type of machine.
More information
This tutorial only scratches the surface of environments and what they can do. For more information, take a look at the Spack resources below.
Setting up and building environments
Environments: reference docs
Configuration tutorial: for customizing your environment
Spack stacks tutorial: for configuring combinatorial environments (e.g., same packages across a list of compilers)
Install-level parallel builds: for how to launch
spack install
to build your environment in parallel
Using environments
Developer workflows: for developing code in an environment
GitLab CI pipelines with Spack environments: for using environments to generate CI pipelines
Container Images: for creating containers from environments
Spack stacks tutorial: for managing large deployments of software
Finding examples of environments
Spack Stack Catalog: for discovering environments that you can explore on GitHub