Update basic usage and modules tutorial (#9807)
* "spack install" now uses cache by default, update examples accordingly * Replace some example packages with others * Packing tutorial reference to "spack env" replaced with "spack build-env" * Command line prompts in examples are shortened * Example output (including paths) are updated to be more relevant to training environment
This commit is contained in:
parent
2a5d5fda26
commit
dfd0e96508
File diff suppressed because it is too large
Load Diff
@ -149,78 +149,16 @@ how Spack can help with similar situations, as they will happen on real HPC clus
|
|||||||
For instance, it's often preferable for Spack to use vendor-provided MPI
|
For instance, it's often preferable for Spack to use vendor-provided MPI
|
||||||
implementations than to build one itself.
|
implementations than to build one itself.
|
||||||
|
|
||||||
The best way to follow along is to use a Docker image, which comes
|
To keep the set of software we're dealing with manageable, we're going
|
||||||
with Spack and all the software used in the following parts already
|
to uninstall everything from earlier in the tutorial.
|
||||||
pre-installed. If you want to proceed this way, read :ref:`module_file_tutorial_use_docker`.
|
|
||||||
|
|
||||||
If you don't have Docker installed or for any other reason you
|
.. code-block: console
|
||||||
prefer to work locally, follow instead :ref:`module_file_tutorial_work_locally`
|
|
||||||
to know how to clone Spack and install the software.
|
|
||||||
Be aware that the set-up will take longer and that the details of the snippets
|
|
||||||
below assume the Docker image and may need changes to work in your particular
|
|
||||||
environment.
|
|
||||||
|
|
||||||
.. _module_file_tutorial_use_docker:
|
$ spack uninstall -ay
|
||||||
|
|
||||||
^^^^^^^^^^^^^^^^^^
|
^^^^^^^^^^^^^^^^^^^
|
||||||
Use a Docker image
|
|
||||||
^^^^^^^^^^^^^^^^^^
|
|
||||||
|
|
||||||
The fastest way to set-up your environment is to :ref:`use a Docker image <workflow_create_docker_image>`:
|
|
||||||
|
|
||||||
.. code-block:: console
|
|
||||||
|
|
||||||
$ docker pull spack/module-tutorial:latest
|
|
||||||
$ docker run --rm -h module-file-tutorial -it spack/module-tutorial:latest
|
|
||||||
root@module-file-tutorial:/#
|
|
||||||
|
|
||||||
If you arrived at this point you should be ready to start, as all the software needed is
|
|
||||||
pre-installed in the image:
|
|
||||||
|
|
||||||
.. code-block:: console
|
|
||||||
|
|
||||||
root@module-file-tutorial:/# which spack
|
|
||||||
/usr/local/bin/spack
|
|
||||||
root@module-file-tutorial:/# spack find
|
|
||||||
==> 43 installed packages.
|
|
||||||
-- linux-ubuntu16.04-x86_64 / gcc@5.4.0 -------------------------
|
|
||||||
autoconf@2.69 gdbm@1.14.1 isl@0.19 lmod@7.7.29 lua-luaposix@33.4.0 mpfr@4.0.1 pkgconf@1.4.2 zlib@1.2.11
|
|
||||||
automake@1.16.1 git@2.9.4 libsigsegv@2.11 lua@5.3.4 m4@1.4.18 ncurses@6.1 readline@7.0
|
|
||||||
gcc@7.2.0 gmp@6.1.2 libtool@2.4.6 lua-luafilesystem@1_6_3 mpc@1.1.0 perl@5.26.2 tcl@8.6.8
|
|
||||||
|
|
||||||
-- linux-ubuntu16.04-x86_64 / gcc@7.2.0 -------------------------
|
|
||||||
bzip2@1.0.6 mpich@3.2.1 netlib-scalapack@2.0.2 netlib-scalapack@2.0.2 openssl@1.0.2o py-scipy@1.1.0 readline@7.0
|
|
||||||
cmake@3.12.0 ncurses@6.1 netlib-scalapack@2.0.2 openblas@0.3.0 pkgconf@1.4.2 py-setuptools@39.2.0 sqlite@3.23.1
|
|
||||||
gdbm@1.14.1 netlib-lapack@3.8.0 netlib-scalapack@2.0.2 openmpi@1.10.2 py-numpy@1.14.3 python@2.7.15 zlib@1.2.11
|
|
||||||
|
|
||||||
Go to :ref:`module_file_tutorial_non_hierarchical` to proceed with the tutorial.
|
|
||||||
|
|
||||||
.. note::
|
|
||||||
Dockerfile for this image
|
|
||||||
Those of you that want to build a similar container themselves can find the
|
|
||||||
``Dockerfile`` and the other resources in Spack's ``share/spack/docs/docker``
|
|
||||||
folder.
|
|
||||||
|
|
||||||
.. _module_file_tutorial_work_locally:
|
|
||||||
|
|
||||||
^^^^^^^^^^^^^^^^^^^^^^
|
|
||||||
Work in a local folder
|
|
||||||
^^^^^^^^^^^^^^^^^^^^^^
|
|
||||||
|
|
||||||
If you don't feel like using a container, you can set-up your environment
|
|
||||||
locally. Let's start by cloning the Spack repository and moving to the directory
|
|
||||||
where it was checked out:
|
|
||||||
|
|
||||||
.. code-block:: console
|
|
||||||
|
|
||||||
$ git clone https://github.com/spack/spack.git
|
|
||||||
$ cd spack
|
|
||||||
|
|
||||||
From here we'll be building the required stack of software.
|
|
||||||
|
|
||||||
"""""""""""""""""""
|
|
||||||
Build a module tool
|
Build a module tool
|
||||||
"""""""""""""""""""
|
^^^^^^^^^^^^^^^^^^^
|
||||||
|
|
||||||
The first thing that we need is the module tool. In this case we
|
The first thing that we need is the module tool. In this case we
|
||||||
choose ``lmod`` as it can work with both hierarchical and non-hierarchical
|
choose ``lmod`` as it can work with both hierarchical and non-hierarchical
|
||||||
@ -239,7 +177,8 @@ to remember, we'll employ the command ``spack location`` to retrieve the
|
|||||||
|
|
||||||
$ . $(spack location -i lmod)/lmod/lmod/init/bash
|
$ . $(spack location -i lmod)/lmod/lmod/init/bash
|
||||||
|
|
||||||
Now we can source the setup file and activate the :ref:`shell support <shell-support>`:
|
Now we can re-source the setup file and Spack modules will be put in
|
||||||
|
our module path.
|
||||||
|
|
||||||
.. code-block:: console
|
.. code-block:: console
|
||||||
|
|
||||||
@ -252,26 +191,15 @@ Now we can source the setup file and activate the :ref:`shell support <shell-sup
|
|||||||
to the documentation :ref:`here <InstallEnvironmentModules>`.
|
to the documentation :ref:`here <InstallEnvironmentModules>`.
|
||||||
|
|
||||||
|
|
||||||
""""""""""""""""""
|
^^^^^^^^^^^^^^^^^^
|
||||||
Add a new compiler
|
Add a new compiler
|
||||||
""""""""""""""""""
|
^^^^^^^^^^^^^^^^^^
|
||||||
|
|
||||||
The second step is to build a recent compiler. On first use, Spack
|
The second step is to build a recent compiler. On first use, Spack
|
||||||
scans the environment and automatically locates the
|
scans the environment and automatically locates the compiler(s)
|
||||||
compiler(s) already available on the system. This is what you'll see
|
already available on the system. For this tutorial, however, we want
|
||||||
on Ubuntu 14.04:
|
to use ``gcc@7.2.0``.
|
||||||
|
|
||||||
.. code-block:: console
|
|
||||||
|
|
||||||
$ uname -a
|
|
||||||
Linux nuvolari 4.4.0-45-generic #66~14.04.1-Ubuntu SMP Wed Oct 19 15:05:38 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
|
|
||||||
|
|
||||||
$ spack compilers
|
|
||||||
==> Available compilers
|
|
||||||
-- gcc ----------------------------------------------------------
|
|
||||||
gcc@4.8
|
|
||||||
|
|
||||||
Let's bootstrap a more recent compiler with the one that was automatically detected:
|
|
||||||
|
|
||||||
.. code-block:: console
|
.. code-block:: console
|
||||||
|
|
||||||
@ -300,7 +228,7 @@ You can use this command to double check:
|
|||||||
|
|
||||||
$ module list
|
$ module list
|
||||||
Currently Loaded Modules:
|
Currently Loaded Modules:
|
||||||
1) lmod-7.7-gcc-4.8-okcwjgw 2) gcc-7.2.0-gcc-4.8-twd5nqg
|
1) gcc-7.2.0-gcc-5.4.0-b7smjjc
|
||||||
|
|
||||||
Note that the 7-digit hash at the end of the generated module may vary depending
|
Note that the 7-digit hash at the end of the generated module may vary depending
|
||||||
on architecture or package version. Now that we have ``gcc@7.2.0`` in ``PATH`` we
|
on architecture or package version. Now that we have ``gcc@7.2.0`` in ``PATH`` we
|
||||||
@ -309,38 +237,23 @@ can finally add it to the list of compilers known to Spack:
|
|||||||
.. code-block:: console
|
.. code-block:: console
|
||||||
|
|
||||||
$ spack compiler add
|
$ spack compiler add
|
||||||
==> Added 1 new compiler to ~/.spack/linux/compilers.yaml
|
==> Added 1 new compiler to /home/spack1/.spack/linux/compilers.yaml
|
||||||
gcc@7.2.0
|
gcc@7.2.0
|
||||||
|
==> Compilers are defined in the following files:
|
||||||
|
/home/spack1/.spack/linux/compilers.yaml
|
||||||
|
|
||||||
$ spack compilers
|
$ spack compiler list
|
||||||
==> Available compilers
|
==> Available compilers
|
||||||
-- gcc ----------------------------------------------------------
|
-- clang ubuntu16.04-x86_64 -------------------------------------
|
||||||
gcc@7.2.0 gcc@4.8
|
clang@3.8.0-2ubuntu4 clang@3.7.1-2ubuntu2
|
||||||
|
|
||||||
|
-- gcc ubuntu16.04-x86_64 ---------------------------------------
|
||||||
|
gcc@7.2.0 gcc@5.4.0 gcc@4.7
|
||||||
|
|
||||||
|
|
||||||
""""""""""""""""""""""""""""""""""""""""""""""""""""
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||||
Build the software that will be used in the tutorial
|
Build the software that will be used in the tutorial
|
||||||
""""""""""""""""""""""""""""""""""""""""""""""""""""
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||||
|
|
||||||
The last step is to install the software stack needed later on. To mimic
|
|
||||||
an external installation of an MPI provider we'll install ``openmpi`` on
|
|
||||||
the system we are working on. On Ubuntu 14.04 it boils down to:
|
|
||||||
|
|
||||||
.. code-block:: console
|
|
||||||
|
|
||||||
$ sudo apt-get install openmpi-bin openmpi-common libopenmpi-dev
|
|
||||||
...
|
|
||||||
|
|
||||||
but the exact command varies according to your OS. Then we need to prepare
|
|
||||||
a ``packages.yaml`` file that instructs Spack to use an externally provided MPI:
|
|
||||||
|
|
||||||
.. code-block:: yaml
|
|
||||||
|
|
||||||
packages:
|
|
||||||
openmpi:
|
|
||||||
buildable: False
|
|
||||||
paths:
|
|
||||||
openmpi@1.6: /usr
|
|
||||||
|
|
||||||
Finally, we should use Spack to install the packages used in the examples:
|
Finally, we should use Spack to install the packages used in the examples:
|
||||||
|
|
||||||
@ -363,24 +276,36 @@ If you arrived to this point you should have an environment that looks similar t
|
|||||||
|
|
||||||
.. code-block:: console
|
.. code-block:: console
|
||||||
|
|
||||||
root@module-file-tutorial:/# module avail
|
$ module avail
|
||||||
|
|
||||||
-------------------------------------------- /usr/local/share/spack/modules/linux-ubuntu16.04-x86_64 ---------------------------------------------
|
----------------------------------------------- /home/spack1/spack/share/spack/modules/linux-ubuntu16.04-x86_64 -----------------------------------------------
|
||||||
autoconf-2.69-gcc-5.4.0-cbvv5rj lua-luaposix-33.4.0-gcc-5.4.0-i7w7ynf perl-5.26.2-gcc-5.4.0-n2k4mza
|
autoconf-2.69-gcc-5.4.0-3sx2gxe libsigsegv-2.11-gcc-7.2.0-g67xpfd openssl-1.0.2o-gcc-5.4.0-b4y3w3b
|
||||||
automake-1.16.1-gcc-5.4.0-lykrrr4 m4-1.4.18-gcc-5.4.0-3z33ecf pkgconf-1.4.2-gcc-5.4.0-fovrh7a
|
autoconf-2.69-gcc-7.2.0-yb2makb libtool-2.4.6-gcc-5.4.0-o2pfwjf openssl-1.0.2o-gcc-7.2.0-cvldq3v
|
||||||
bzip2-1.0.6-gcc-7.2.0-mwamumj mpc-1.1.0-gcc-5.4.0-56lbd3h pkgconf-1.4.2-gcc-7.2.0-yoxwmgb
|
automake-1.16.1-gcc-5.4.0-rymw7im libtool-2.4.6-gcc-7.2.0-kt2udm6 pcre-8.42-gcc-5.4.0-gt5lgzi
|
||||||
cmake-3.12.0-gcc-7.2.0-6ovorxs mpfr-4.0.1-gcc-5.4.0-dy5r7hi py-numpy-1.14.3-gcc-7.2.0-t3loxvu
|
automake-1.16.1-gcc-7.2.0-qoowd5q libxml2-2.9.8-gcc-5.4.0-wpexsph perl-5.26.2-gcc-5.4.0-ic2kyoa
|
||||||
gcc-7.2.0-gcc-5.4.0-wwhgyej mpich-3.2.1-gcc-7.2.0-vt5xcat py-scipy-1.1.0-gcc-7.2.0-fdiryak
|
bzip2-1.0.6-gcc-5.4.0-ufczdvs libxml2-2.9.8-gcc-7.2.0-47gf5kk perl-5.26.2-gcc-7.2.0-fdwz5yu
|
||||||
gdbm-1.14.1-gcc-5.4.0-q4fpyuo ncurses-6.1-gcc-5.4.0-3o765ou py-setuptools-39.2.0-gcc-7.2.0-jqhycal
|
bzip2-1.0.6-gcc-7.2.0-mwamumj lmod-7.8-gcc-5.4.0-kmhks3p pkgconf-1.4.2-gcc-5.4.0-fovrh7a
|
||||||
gdbm-1.14.1-gcc-7.2.0-zk5lhob ncurses-6.1-gcc-7.2.0-xcgzqdv python-2.7.15-gcc-7.2.0-c7pnzul
|
cmake-3.12.3-gcc-7.2.0-obqgn2v lua-5.3.4-gcc-5.4.0-cpfeo2w pkgconf-1.4.2-gcc-7.2.0-yoxwmgb
|
||||||
git-2.9.4-gcc-5.4.0-mkaoyhz netlib-lapack-3.8.0-gcc-7.2.0-7apabqu readline-7.0-gcc-5.4.0-nxhwrg7
|
curl-7.60.0-gcc-5.4.0-vzqreb2 lua-luafilesystem-1_6_3-gcc-5.4.0-alakjim py-numpy-1.15.2-gcc-7.2.0-wbwtcxf
|
||||||
gmp-6.1.2-gcc-5.4.0-qc4qcfz netlib-scalapack-2.0.2-gcc-7.2.0-3bz5rxx readline-7.0-gcc-7.2.0-ccruj2i
|
diffutils-3.6-gcc-5.4.0-2rhuivg lua-luaposix-33.4.0-gcc-5.4.0-7wqhwoc py-scipy-1.1.0-gcc-7.2.0-d5n3cph
|
||||||
isl-0.19-gcc-5.4.0-hsl7f52 netlib-scalapack-2.0.2-gcc-7.2.0-6i5qsqx sqlite-3.23.1-gcc-7.2.0-5ltus3a
|
diffutils-3.6-gcc-7.2.0-eauxwi7 m4-1.4.18-gcc-5.4.0-suf5jtc py-setuptools-40.4.3-gcc-7.2.0-5dbwfwn
|
||||||
libsigsegv-2.11-gcc-5.4.0-fypapcp netlib-scalapack-2.0.2-gcc-7.2.0-uhzmwog tcl-8.6.8-gcc-5.4.0-qhwyccy
|
expat-2.2.5-gcc-5.4.0-emyv67q m4-1.4.18-gcc-7.2.0-wdzvagl python-2.7.15-gcc-7.2.0-ucmr2mn
|
||||||
libtool-2.4.6-gcc-5.4.0-o2pfwjf netlib-scalapack-2.0.2-gcc-7.2.0-z52ltyy zlib-1.2.11-gcc-5.4.0-5nus6kn
|
findutils-4.6.0-gcc-7.2.0-ca4b7zq mpc-1.1.0-gcc-5.4.0-iuf3gc3 readline-7.0-gcc-5.4.0-nxhwrg7
|
||||||
lmod-7.7.29-gcc-5.4.0-wl6mywv openblas-0.3.0-gcc-7.2.0-pdatzbi zlib-1.2.11-gcc-7.2.0-ezuwp4p
|
gcc-7.2.0-gcc-5.4.0-b7smjjc (L) mpfr-3.1.6-gcc-5.4.0-jnt2nnp readline-7.0-gcc-7.2.0-ccruj2i
|
||||||
lua-5.3.4-gcc-5.4.0-izvaota openmpi-1.10.2-gcc-7.2.0-6oewzwj
|
gdbm-1.14.1-gcc-5.4.0-q4fpyuo mpich-3.2.1-gcc-7.2.0-vt5xcat sqlite-3.23.1-gcc-7.2.0-5ltus3a
|
||||||
lua-luafilesystem-1_6_3-gcc-5.4.0-ywlmaou openssl-1.0.2o-gcc-7.2.0-cvldq3v
|
gdbm-1.14.1-gcc-7.2.0-zk5lhob ncurses-6.1-gcc-5.4.0-3o765ou tar-1.30-gcc-5.4.0-dk7lrpo
|
||||||
|
gettext-0.19.8.1-gcc-5.4.0-tawgous ncurses-6.1-gcc-7.2.0-xcgzqdv tcl-8.6.8-gcc-5.4.0-qhwyccy
|
||||||
|
git-2.19.1-gcc-5.4.0-p3gjnfa netlib-lapack-3.8.0-gcc-7.2.0-fj7nayd texinfo-6.5-gcc-7.2.0-cuqnfgf
|
||||||
|
gmp-6.1.2-gcc-5.4.0-qc4qcfz netlib-scalapack-2.0.2-gcc-7.2.0-67nmj7g unzip-6.0-gcc-5.4.0-ba23fbg
|
||||||
|
hwloc-1.11.9-gcc-7.2.0-gbyc65s netlib-scalapack-2.0.2-gcc-7.2.0-6jgjbyg util-macros-1.19.1-gcc-7.2.0-t62kozq
|
||||||
|
isl-0.18-gcc-5.4.0-vttqout netlib-scalapack-2.0.2-gcc-7.2.0-prgo67d xz-5.2.4-gcc-5.4.0-teneqii
|
||||||
|
libbsd-0.8.6-gcc-5.4.0-f4qkkwm netlib-scalapack-2.0.2-gcc-7.2.0-zxpt252 xz-5.2.4-gcc-7.2.0-rql5kog
|
||||||
|
libiconv-1.15-gcc-5.4.0-u2x3umv numactl-2.0.11-gcc-7.2.0-rifwktk zlib-1.2.11-gcc-5.4.0-5nus6kn
|
||||||
|
libpciaccess-0.13.5-gcc-7.2.0-riipwi2 openblas-0.3.3-gcc-7.2.0-xxoxfh4 zlib-1.2.11-gcc-7.2.0-ezuwp4p
|
||||||
|
libsigsegv-2.11-gcc-5.4.0-fypapcp openmpi-3.1.3-gcc-7.2.0-do5xfer
|
||||||
|
|
||||||
|
Where:
|
||||||
|
L: Module is loaded
|
||||||
|
|
||||||
Use "module spider" to find all possible modules.
|
Use "module spider" to find all possible modules.
|
||||||
Use "module keyword key1 key2 ..." to search for all possible modules matching any of the "keys".
|
Use "module keyword key1 key2 ..." to search for all possible modules matching any of the "keys".
|
||||||
@ -391,24 +316,24 @@ Taking a look at the ``gcc`` module you'll see, for example:
|
|||||||
|
|
||||||
.. code-block:: console
|
.. code-block:: console
|
||||||
|
|
||||||
root@module-file-tutorial:/# module show gcc-7.2.0-gcc-5.4.0-wwhgyej
|
$ module show gcc-7.2.0-gcc-5.4.0-b7smjjc
|
||||||
----------------------------------------------------------------------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||||
/usr/local/share/spack/modules/linux-ubuntu16.04-x86_64/gcc-7.2.0-gcc-5.4.0-wwhgyej:
|
/home/spack1/spack/share/spack/modules/linux-ubuntu16.04-x86_64/gcc-7.2.0-gcc-5.4.0-b7smjjc:
|
||||||
----------------------------------------------------------------------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||||
whatis("The GNU Compiler Collection includes front ends for C, C++, Objective-C, Fortran, Ada, and Go, as well as libraries for these languages. ")
|
whatis("The GNU Compiler Collection includes front ends for C, C++, Objective-C, Fortran, Ada, and Go, as well as libraries for these languages. ")
|
||||||
prepend_path("PATH","/usr/local/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-wwhgyejrjfjtdsgga3hn246bc64jtr6o/bin")
|
prepend_path("PATH","/home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-b7smjjcsmwe5u5fcsvjmonlhlzzctnfs/bin")
|
||||||
prepend_path("MANPATH","/usr/local/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-wwhgyejrjfjtdsgga3hn246bc64jtr6o/share/man")
|
prepend_path("MANPATH","/home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-b7smjjcsmwe5u5fcsvjmonlhlzzctnfs/share/man")
|
||||||
prepend_path("LIBRARY_PATH","/usr/local/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-wwhgyejrjfjtdsgga3hn246bc64jtr6o/lib")
|
prepend_path("LD_LIBRARY_PATH","/home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-b7smjjcsmwe5u5fcsvjmonlhlzzctnfs/lib")
|
||||||
prepend_path("LD_LIBRARY_PATH","/usr/local/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-wwhgyejrjfjtdsgga3hn246bc64jtr6o/lib")
|
prepend_path("LIBRARY_PATH","/home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-b7smjjcsmwe5u5fcsvjmonlhlzzctnfs/lib")
|
||||||
prepend_path("LIBRARY_PATH","/usr/local/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-wwhgyejrjfjtdsgga3hn246bc64jtr6o/lib64")
|
prepend_path("LD_LIBRARY_PATH","/home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-b7smjjcsmwe5u5fcsvjmonlhlzzctnfs/lib64")
|
||||||
prepend_path("LD_LIBRARY_PATH","/usr/local/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-wwhgyejrjfjtdsgga3hn246bc64jtr6o/lib64")
|
prepend_path("LIBRARY_PATH","/home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-b7smjjcsmwe5u5fcsvjmonlhlzzctnfs/lib64")
|
||||||
prepend_path("CPATH","/usr/local/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-wwhgyejrjfjtdsgga3hn246bc64jtr6o/include")
|
prepend_path("CPATH","/home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-b7smjjcsmwe5u5fcsvjmonlhlzzctnfs/include")
|
||||||
prepend_path("CMAKE_PREFIX_PATH","/usr/local/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-wwhgyejrjfjtdsgga3hn246bc64jtr6o/")
|
prepend_path("CMAKE_PREFIX_PATH","/home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-b7smjjcsmwe5u5fcsvjmonlhlzzctnfs/")
|
||||||
setenv("CC","/usr/local/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-wwhgyejrjfjtdsgga3hn246bc64jtr6o/bin/gcc")
|
setenv("CC","/home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-b7smjjcsmwe5u5fcsvjmonlhlzzctnfs/bin/gcc")
|
||||||
setenv("CXX","/usr/local/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-wwhgyejrjfjtdsgga3hn246bc64jtr6o/bin/g++")
|
setenv("CXX","/home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-b7smjjcsmwe5u5fcsvjmonlhlzzctnfs/bin/g++")
|
||||||
setenv("FC","/usr/local/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-wwhgyejrjfjtdsgga3hn246bc64jtr6o/bin/gfortran")
|
setenv("FC","/home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-b7smjjcsmwe5u5fcsvjmonlhlzzctnfs/bin/gfortran")
|
||||||
setenv("F77","/usr/local/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-wwhgyejrjfjtdsgga3hn246bc64jtr6o/bin/gfortran")
|
setenv("F77","/home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-b7smjjcsmwe5u5fcsvjmonlhlzzctnfs/bin/gfortran")
|
||||||
setenv("F90","/usr/local/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-wwhgyejrjfjtdsgga3hn246bc64jtr6o/bin/gfortran")
|
setenv("F90","/home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-b7smjjcsmwe5u5fcsvjmonlhlzzctnfs/bin/gfortran")
|
||||||
help([[The GNU Compiler Collection includes front ends for C, C++, Objective-C,
|
help([[The GNU Compiler Collection includes front ends for C, C++, Objective-C,
|
||||||
Fortran, Ada, and Go, as well as libraries for these languages.
|
Fortran, Ada, and Go, as well as libraries for these languages.
|
||||||
]])
|
]])
|
||||||
@ -438,22 +363,26 @@ Next you should regenerate all the module files:
|
|||||||
|
|
||||||
.. code-block:: console
|
.. code-block:: console
|
||||||
|
|
||||||
root@module-file-tutorial:/# spack module tcl refresh
|
$ spack module tcl refresh
|
||||||
==> You are about to regenerate tcl module files for:
|
==> You are about to regenerate tcl module files for:
|
||||||
|
|
||||||
-- linux-ubuntu16.04-x86_64 / gcc@5.4.0 -------------------------
|
-- linux-ubuntu16.04-x86_64 / gcc@5.4.0 -------------------------
|
||||||
cbvv5rj autoconf@2.69 qc4qcfz gmp@6.1.2 izvaota lua@5.3.4 dy5r7hi mpfr@4.0.1 qhwyccy tcl@8.6.8
|
3sx2gxe autoconf@2.69 b7smjjc gcc@7.2.0 f4qkkwm libbsd@0.8.6 cpfeo2w lua@5.3.4 3o765ou ncurses@6.1 dk7lrpo tar@1.30
|
||||||
lykrrr4 automake@1.16.1 hsl7f52 isl@0.19 ywlmaou lua-luafilesystem@1_6_3 3o765ou ncurses@6.1 5nus6kn zlib@1.2.11
|
rymw7im automake@1.16.1 q4fpyuo gdbm@1.14.1 u2x3umv libiconv@1.15 alakjim lua-luafilesystem@1_6_3 b4y3w3b openssl@1.0.2o qhwyccy tcl@8.6.8
|
||||||
wwhgyej gcc@7.2.0 fypapcp libsigsegv@2.11 i7w7ynf lua-luaposix@33.4.0 n2k4mza perl@5.26.2
|
ufczdvs bzip2@1.0.6 tawgous gettext@0.19.8.1 fypapcp libsigsegv@2.11 7wqhwoc lua-luaposix@33.4.0 gt5lgzi pcre@8.42 ba23fbg unzip@6.0
|
||||||
q4fpyuo gdbm@1.14.1 o2pfwjf libtool@2.4.6 3z33ecf m4@1.4.18 fovrh7a pkgconf@1.4.2
|
vzqreb2 curl@7.60.0 p3gjnfa git@2.19.1 o2pfwjf libtool@2.4.6 suf5jtc m4@1.4.18 ic2kyoa perl@5.26.2 teneqii xz@5.2.4
|
||||||
mkaoyhz git@2.9.4 wl6mywv lmod@7.7.29 56lbd3h mpc@1.1.0 nxhwrg7 readline@7.0
|
2rhuivg diffutils@3.6 qc4qcfz gmp@6.1.2 wpexsph libxml2@2.9.8 iuf3gc3 mpc@1.1.0 fovrh7a pkgconf@1.4.2 5nus6kn zlib@1.2.11
|
||||||
|
emyv67q expat@2.2.5 vttqout isl@0.18 kmhks3p lmod@7.8 jnt2nnp mpfr@3.1.6 nxhwrg7 readline@7.0
|
||||||
|
|
||||||
-- linux-ubuntu16.04-x86_64 / gcc@7.2.0 -------------------------
|
-- linux-ubuntu16.04-x86_64 / gcc@7.2.0 -------------------------
|
||||||
mwamumj bzip2@1.0.6 7apabqu netlib-lapack@3.8.0 pdatzbi openblas@0.3.0 fdiryak py-scipy@1.1.0 ezuwp4p zlib@1.2.11
|
yb2makb autoconf@2.69 riipwi2 libpciaccess@0.13.5 6jgjbyg netlib-scalapack@2.0.2 fdwz5yu perl@5.26.2 cuqnfgf texinfo@6.5
|
||||||
6ovorxs cmake@3.12.0 6i5qsqx netlib-scalapack@2.0.2 6oewzwj openmpi@1.10.2 jqhycal py-setuptools@39.2.0
|
qoowd5q automake@1.16.1 g67xpfd libsigsegv@2.11 zxpt252 netlib-scalapack@2.0.2 yoxwmgb pkgconf@1.4.2 t62kozq util-macros@1.19.1
|
||||||
zk5lhob gdbm@1.14.1 uhzmwog netlib-scalapack@2.0.2 cvldq3v openssl@1.0.2o c7pnzul python@2.7.15
|
mwamumj bzip2@1.0.6 kt2udm6 libtool@2.4.6 67nmj7g netlib-scalapack@2.0.2 wbwtcxf py-numpy@1.15.2 rql5kog xz@5.2.4
|
||||||
vt5xcat mpich@3.2.1 3bz5rxx netlib-scalapack@2.0.2 yoxwmgb pkgconf@1.4.2 ccruj2i readline@7.0
|
obqgn2v cmake@3.12.3 47gf5kk libxml2@2.9.8 prgo67d netlib-scalapack@2.0.2 d5n3cph py-scipy@1.1.0 ezuwp4p zlib@1.2.11
|
||||||
xcgzqdv ncurses@6.1 z52ltyy netlib-scalapack@2.0.2 t3loxvu py-numpy@1.14.3 5ltus3a sqlite@3.23.1
|
eauxwi7 diffutils@3.6 wdzvagl m4@1.4.18 rifwktk numactl@2.0.11 5dbwfwn py-setuptools@40.4.3
|
||||||
|
ca4b7zq findutils@4.6.0 vt5xcat mpich@3.2.1 xxoxfh4 openblas@0.3.3 ucmr2mn python@2.7.15
|
||||||
|
zk5lhob gdbm@1.14.1 xcgzqdv ncurses@6.1 do5xfer openmpi@3.1.3 ccruj2i readline@7.0
|
||||||
|
gbyc65s hwloc@1.11.9 fj7nayd netlib-lapack@3.8.0 cvldq3v openssl@1.0.2o 5ltus3a sqlite@3.23.1
|
||||||
|
|
||||||
==> Do you want to proceed? [y/n] y
|
==> Do you want to proceed? [y/n] y
|
||||||
==> Regenerating tcl module files
|
==> Regenerating tcl module files
|
||||||
@ -463,21 +392,21 @@ paths have disappeared:
|
|||||||
|
|
||||||
.. code-block:: console
|
.. code-block:: console
|
||||||
|
|
||||||
root@module-file-tutorial:/# module show gcc-7.2.0-gcc-5.4.0-wwhgyej
|
$ module show gcc-7.2.0-gcc-5.4.0-b7smjjc
|
||||||
----------------------------------------------------------------------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||||
/usr/local/share/spack/modules/linux-ubuntu16.04-x86_64/gcc-7.2.0-gcc-5.4.0-wwhgyej:
|
/home/spack1/spack/share/spack/modules/linux-ubuntu16.04-x86_64/gcc-7.2.0-gcc-5.4.0-b7smjjc:
|
||||||
----------------------------------------------------------------------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||||
whatis("The GNU Compiler Collection includes front ends for C, C++, Objective-C, Fortran, Ada, and Go, as well as libraries for these languages. ")
|
whatis("The GNU Compiler Collection includes front ends for C, C++, Objective-C, Fortran, Ada, and Go, as well as libraries for these languages. ")
|
||||||
prepend_path("PATH","/usr/local/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-wwhgyejrjfjtdsgga3hn246bc64jtr6o/bin")
|
prepend_path("PATH","/home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-b7smjjcsmwe5u5fcsvjmonlhlzzctnfs/bin")
|
||||||
prepend_path("MANPATH","/usr/local/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-wwhgyejrjfjtdsgga3hn246bc64jtr6o/share/man")
|
prepend_path("MANPATH","/home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-b7smjjcsmwe5u5fcsvjmonlhlzzctnfs/share/man")
|
||||||
prepend_path("LD_LIBRARY_PATH","/usr/local/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-wwhgyejrjfjtdsgga3hn246bc64jtr6o/lib")
|
prepend_path("LD_LIBRARY_PATH","/home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-b7smjjcsmwe5u5fcsvjmonlhlzzctnfs/lib")
|
||||||
prepend_path("LD_LIBRARY_PATH","/usr/local/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-wwhgyejrjfjtdsgga3hn246bc64jtr6o/lib64")
|
prepend_path("LD_LIBRARY_PATH","/home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-b7smjjcsmwe5u5fcsvjmonlhlzzctnfs/lib64")
|
||||||
prepend_path("CMAKE_PREFIX_PATH","/usr/local/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-wwhgyejrjfjtdsgga3hn246bc64jtr6o/")
|
prepend_path("CMAKE_PREFIX_PATH","/home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-b7smjjcsmwe5u5fcsvjmonlhlzzctnfs/")
|
||||||
setenv("CC","/usr/local/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-wwhgyejrjfjtdsgga3hn246bc64jtr6o/bin/gcc")
|
setenv("CC","/home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-b7smjjcsmwe5u5fcsvjmonlhlzzctnfs/bin/gcc")
|
||||||
setenv("CXX","/usr/local/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-wwhgyejrjfjtdsgga3hn246bc64jtr6o/bin/g++")
|
setenv("CXX","/home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-b7smjjcsmwe5u5fcsvjmonlhlzzctnfs/bin/g++")
|
||||||
setenv("FC","/usr/local/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-wwhgyejrjfjtdsgga3hn246bc64jtr6o/bin/gfortran")
|
setenv("FC","/home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-b7smjjcsmwe5u5fcsvjmonlhlzzctnfs/bin/gfortran")
|
||||||
setenv("F77","/usr/local/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-wwhgyejrjfjtdsgga3hn246bc64jtr6o/bin/gfortran")
|
setenv("F77","/home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-b7smjjcsmwe5u5fcsvjmonlhlzzctnfs/bin/gfortran")
|
||||||
setenv("F90","/usr/local/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-wwhgyejrjfjtdsgga3hn246bc64jtr6o/bin/gfortran")
|
setenv("F90","/home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-b7smjjcsmwe5u5fcsvjmonlhlzzctnfs/bin/gfortran")
|
||||||
help([[The GNU Compiler Collection includes front ends for C, C++, Objective-C,
|
help([[The GNU Compiler Collection includes front ends for C, C++, Objective-C,
|
||||||
Fortran, Ada, and Go, as well as libraries for these languages.
|
Fortran, Ada, and Go, as well as libraries for these languages.
|
||||||
]])
|
]])
|
||||||
@ -506,46 +435,55 @@ To do this you should add a ``blacklist`` keyword to ``~/.spack/modules.yaml``:
|
|||||||
|
|
||||||
and regenerate the module files:
|
and regenerate the module files:
|
||||||
|
|
||||||
|
This time it is convenient to pass the option ``--delete-tree`` to the command that
|
||||||
|
regenerates the module files to instruct it to delete the existing tree and regenerate
|
||||||
|
a new one instead of overwriting the files in the existing directory.
|
||||||
|
|
||||||
.. code-block:: console
|
.. code-block:: console
|
||||||
|
|
||||||
root@module-file-tutorial:/# spack module tcl refresh --delete-tree
|
$ spack module tcl refresh --delete-tree
|
||||||
==> You are about to regenerate tcl module files for:
|
==> You are about to regenerate tcl module files for:
|
||||||
|
|
||||||
-- linux-ubuntu16.04-x86_64 / gcc@5.4.0 -------------------------
|
-- linux-ubuntu16.04-x86_64 / gcc@5.4.0 -------------------------
|
||||||
cbvv5rj autoconf@2.69 qc4qcfz gmp@6.1.2 izvaota lua@5.3.4 dy5r7hi mpfr@4.0.1 qhwyccy tcl@8.6.8
|
3sx2gxe autoconf@2.69 b7smjjc gcc@7.2.0 f4qkkwm libbsd@0.8.6 cpfeo2w lua@5.3.4 3o765ou ncurses@6.1 dk7lrpo tar@1.30
|
||||||
lykrrr4 automake@1.16.1 hsl7f52 isl@0.19 ywlmaou lua-luafilesystem@1_6_3 3o765ou ncurses@6.1 5nus6kn zlib@1.2.11
|
rymw7im automake@1.16.1 q4fpyuo gdbm@1.14.1 u2x3umv libiconv@1.15 alakjim lua-luafilesystem@1_6_3 b4y3w3b openssl@1.0.2o qhwyccy tcl@8.6.8
|
||||||
wwhgyej gcc@7.2.0 fypapcp libsigsegv@2.11 i7w7ynf lua-luaposix@33.4.0 n2k4mza perl@5.26.2
|
ufczdvs bzip2@1.0.6 tawgous gettext@0.19.8.1 fypapcp libsigsegv@2.11 7wqhwoc lua-luaposix@33.4.0 gt5lgzi pcre@8.42 ba23fbg unzip@6.0
|
||||||
q4fpyuo gdbm@1.14.1 o2pfwjf libtool@2.4.6 3z33ecf m4@1.4.18 fovrh7a pkgconf@1.4.2
|
vzqreb2 curl@7.60.0 p3gjnfa git@2.19.1 o2pfwjf libtool@2.4.6 suf5jtc m4@1.4.18 ic2kyoa perl@5.26.2 teneqii xz@5.2.4
|
||||||
mkaoyhz git@2.9.4 wl6mywv lmod@7.7.29 56lbd3h mpc@1.1.0 nxhwrg7 readline@7.0
|
2rhuivg diffutils@3.6 qc4qcfz gmp@6.1.2 wpexsph libxml2@2.9.8 iuf3gc3 mpc@1.1.0 fovrh7a pkgconf@1.4.2 5nus6kn zlib@1.2.11
|
||||||
|
emyv67q expat@2.2.5 vttqout isl@0.18 kmhks3p lmod@7.8 jnt2nnp mpfr@3.1.6 nxhwrg7 readline@7.0
|
||||||
|
|
||||||
-- linux-ubuntu16.04-x86_64 / gcc@7.2.0 -------------------------
|
-- linux-ubuntu16.04-x86_64 / gcc@7.2.0 -------------------------
|
||||||
mwamumj bzip2@1.0.6 7apabqu netlib-lapack@3.8.0 pdatzbi openblas@0.3.0 fdiryak py-scipy@1.1.0 ezuwp4p zlib@1.2.11
|
yb2makb autoconf@2.69 riipwi2 libpciaccess@0.13.5 6jgjbyg netlib-scalapack@2.0.2 fdwz5yu perl@5.26.2 cuqnfgf texinfo@6.5
|
||||||
6ovorxs cmake@3.12.0 6i5qsqx netlib-scalapack@2.0.2 6oewzwj openmpi@1.10.2 jqhycal py-setuptools@39.2.0
|
qoowd5q automake@1.16.1 g67xpfd libsigsegv@2.11 zxpt252 netlib-scalapack@2.0.2 yoxwmgb pkgconf@1.4.2 t62kozq util-macros@1.19.1
|
||||||
zk5lhob gdbm@1.14.1 uhzmwog netlib-scalapack@2.0.2 cvldq3v openssl@1.0.2o c7pnzul python@2.7.15
|
mwamumj bzip2@1.0.6 kt2udm6 libtool@2.4.6 67nmj7g netlib-scalapack@2.0.2 wbwtcxf py-numpy@1.15.2 rql5kog xz@5.2.4
|
||||||
vt5xcat mpich@3.2.1 3bz5rxx netlib-scalapack@2.0.2 yoxwmgb pkgconf@1.4.2 ccruj2i readline@7.0
|
obqgn2v cmake@3.12.3 47gf5kk libxml2@2.9.8 prgo67d netlib-scalapack@2.0.2 d5n3cph py-scipy@1.1.0 ezuwp4p zlib@1.2.11
|
||||||
xcgzqdv ncurses@6.1 z52ltyy netlib-scalapack@2.0.2 t3loxvu py-numpy@1.14.3 5ltus3a sqlite@3.23.1
|
eauxwi7 diffutils@3.6 wdzvagl m4@1.4.18 rifwktk numactl@2.0.11 5dbwfwn py-setuptools@40.4.3
|
||||||
|
ca4b7zq findutils@4.6.0 vt5xcat mpich@3.2.1 xxoxfh4 openblas@0.3.3 ucmr2mn python@2.7.15
|
||||||
|
zk5lhob gdbm@1.14.1 xcgzqdv ncurses@6.1 do5xfer openmpi@3.1.3 ccruj2i readline@7.0
|
||||||
|
gbyc65s hwloc@1.11.9 fj7nayd netlib-lapack@3.8.0 cvldq3v openssl@1.0.2o 5ltus3a sqlite@3.23.1
|
||||||
|
|
||||||
==> Do you want to proceed? [y/n] y
|
==> Do you want to proceed? [y/n] y
|
||||||
==> Regenerating tcl module files
|
==> Regenerating tcl module files
|
||||||
|
|
||||||
root@module-file-tutorial:/# module avail
|
$ module avail
|
||||||
|
|
||||||
-------------------------------------------- /usr/local/share/spack/modules/linux-ubuntu16.04-x86_64 ---------------------------------------------
|
----------------------------------------------- /home/spack1/spack/share/spack/modules/linux-ubuntu16.04-x86_64 -----------------------------------------------
|
||||||
bzip2-1.0.6-gcc-7.2.0-mwamumj netlib-scalapack-2.0.2-gcc-7.2.0-6i5qsqx py-numpy-1.14.3-gcc-7.2.0-t3loxvu
|
autoconf-2.69-gcc-7.2.0-yb2makb m4-1.4.18-gcc-7.2.0-wdzvagl perl-5.26.2-gcc-7.2.0-fdwz5yu
|
||||||
cmake-3.12.0-gcc-7.2.0-6ovorxs netlib-scalapack-2.0.2-gcc-7.2.0-uhzmwog py-scipy-1.1.0-gcc-7.2.0-fdiryak
|
automake-1.16.1-gcc-7.2.0-qoowd5q mpich-3.2.1-gcc-7.2.0-vt5xcat pkgconf-1.4.2-gcc-7.2.0-yoxwmgb
|
||||||
gdbm-1.14.1-gcc-7.2.0-zk5lhob netlib-scalapack-2.0.2-gcc-7.2.0-z52ltyy py-setuptools-39.2.0-gcc-7.2.0-jqhycal
|
bzip2-1.0.6-gcc-7.2.0-mwamumj ncurses-6.1-gcc-7.2.0-xcgzqdv py-numpy-1.15.2-gcc-7.2.0-wbwtcxf
|
||||||
mpich-3.2.1-gcc-7.2.0-vt5xcat openblas-0.3.0-gcc-7.2.0-pdatzbi python-2.7.15-gcc-7.2.0-c7pnzul
|
cmake-3.12.3-gcc-7.2.0-obqgn2v netlib-lapack-3.8.0-gcc-7.2.0-fj7nayd py-scipy-1.1.0-gcc-7.2.0-d5n3cph
|
||||||
ncurses-6.1-gcc-7.2.0-xcgzqdv openmpi-1.10.2-gcc-7.2.0-6oewzwj readline-7.0-gcc-7.2.0-ccruj2i
|
diffutils-3.6-gcc-7.2.0-eauxwi7 netlib-scalapack-2.0.2-gcc-7.2.0-67nmj7g py-setuptools-40.4.3-gcc-7.2.0-5dbwfwn
|
||||||
netlib-lapack-3.8.0-gcc-7.2.0-7apabqu openssl-1.0.2o-gcc-7.2.0-cvldq3v sqlite-3.23.1-gcc-7.2.0-5ltus3a
|
findutils-4.6.0-gcc-7.2.0-ca4b7zq netlib-scalapack-2.0.2-gcc-7.2.0-6jgjbyg python-2.7.15-gcc-7.2.0-ucmr2mn
|
||||||
netlib-scalapack-2.0.2-gcc-7.2.0-3bz5rxx pkgconf-1.4.2-gcc-7.2.0-yoxwmgb zlib-1.2.11-gcc-7.2.0-ezuwp4p
|
gdbm-1.14.1-gcc-7.2.0-zk5lhob netlib-scalapack-2.0.2-gcc-7.2.0-prgo67d readline-7.0-gcc-7.2.0-ccruj2i
|
||||||
|
hwloc-1.11.9-gcc-7.2.0-gbyc65s netlib-scalapack-2.0.2-gcc-7.2.0-zxpt252 sqlite-3.23.1-gcc-7.2.0-5ltus3a
|
||||||
|
libpciaccess-0.13.5-gcc-7.2.0-riipwi2 numactl-2.0.11-gcc-7.2.0-rifwktk texinfo-6.5-gcc-7.2.0-cuqnfgf
|
||||||
|
libsigsegv-2.11-gcc-7.2.0-g67xpfd openblas-0.3.3-gcc-7.2.0-xxoxfh4 util-macros-1.19.1-gcc-7.2.0-t62kozq
|
||||||
|
libtool-2.4.6-gcc-7.2.0-kt2udm6 openmpi-3.1.3-gcc-7.2.0-do5xfer xz-5.2.4-gcc-7.2.0-rql5kog
|
||||||
|
libxml2-2.9.8-gcc-7.2.0-47gf5kk openssl-1.0.2o-gcc-7.2.0-cvldq3v zlib-1.2.11-gcc-7.2.0-ezuwp4p
|
||||||
|
|
||||||
Use "module spider" to find all possible modules.
|
Use "module spider" to find all possible modules.
|
||||||
Use "module keyword key1 key2 ..." to search for all possible modules matching any of the "keys".
|
Use "module keyword key1 key2 ..." to search for all possible modules matching any of the "keys".
|
||||||
|
|
||||||
This time it is convenient to pass the option ``--delete-tree`` to the command that
|
|
||||||
regenerates the module files to instruct it to delete the existing tree and regenerate
|
|
||||||
a new one instead of overwriting the files in the existing directory.
|
|
||||||
|
|
||||||
If you look closely you'll see though that we went too far in blacklisting modules:
|
If you look closely you'll see though that we went too far in blacklisting modules:
|
||||||
the module for ``gcc@7.2.0`` disappeared as it was bootstrapped with ``gcc@5.4.0``. To specify
|
the module for ``gcc@7.2.0`` disappeared as it was bootstrapped with ``gcc@5.4.0``. To specify
|
||||||
exceptions to the blacklist rules you can use ``whitelist``:
|
exceptions to the blacklist rules you can use ``whitelist``:
|
||||||
@ -567,7 +505,7 @@ exceptions to the blacklist rules you can use ``whitelist``:
|
|||||||
|
|
||||||
.. code-block:: console
|
.. code-block:: console
|
||||||
|
|
||||||
root@module-file-tutorial:/# spack module tcl refresh -y
|
$ spack module tcl refresh -y
|
||||||
==> Regenerating tcl module files
|
==> Regenerating tcl module files
|
||||||
|
|
||||||
|
|
||||||
@ -575,15 +513,14 @@ you'll see that now the module for ``gcc@7.2.0`` has reappeared:
|
|||||||
|
|
||||||
.. code-block:: console
|
.. code-block:: console
|
||||||
|
|
||||||
root@module-file-tutorial:/# module av gcc-7.2.0-gcc-5.4.0-wwhgyej
|
$ module avail gcc-7.2.0-gcc-5.4.0-b7smjjc
|
||||||
|
|
||||||
-------------------------------------------- /usr/local/share/spack/modules/linux-ubuntu16.04-x86_64 ---------------------------------------------
|
-------------------------------------------- /home/spack1/spack/share/spack/modules/linux-ubuntu16.04-x86_64 ---------------------------------------------
|
||||||
gcc-7.2.0-gcc-5.4.0-wwhgyej
|
gcc-7.2.0-gcc-5.4.0-b7smjjc
|
||||||
|
|
||||||
Use "module spider" to find all possible modules.
|
Use "module spider" to find all possible modules.
|
||||||
Use "module keyword key1 key2 ..." to search for all possible modules matching any of the "keys".
|
Use "module keyword key1 key2 ..." to search for all possible modules matching any of the "keys".
|
||||||
|
|
||||||
|
|
||||||
An additional possibility that you can leverage to unclutter the environment
|
An additional possibility that you can leverage to unclutter the environment
|
||||||
is that of preventing the generation of module files for implicitly installed
|
is that of preventing the generation of module files for implicitly installed
|
||||||
packages. In this case all one needs to do is to add the following line:
|
packages. In this case all one needs to do is to add the following line:
|
||||||
@ -631,10 +568,10 @@ If you try to regenerate the module files now you will get an error:
|
|||||||
|
|
||||||
.. code-block:: console
|
.. code-block:: console
|
||||||
|
|
||||||
root@module-file-tutorial:/# spack module tcl refresh --delete-tree -y
|
$ spack module tcl refresh --delete-tree -y
|
||||||
==> Error: Name clashes detected in module files:
|
==> Error: Name clashes detected in module files:
|
||||||
|
|
||||||
file: /usr/local/share/spack/modules/linux-ubuntu16.04-x86_64/netlib-scalapack-2.0.2-gcc-7.2.0
|
file: /home/spack1/spack/share/spack/modules/linux-ubuntu16.04-x86_64/netlib-scalapack-2.0.2-gcc-7.2.0
|
||||||
spec: netlib-scalapack@2.0.2%gcc@7.2.0 build_type=RelWithDebInfo ~pic+shared arch=linux-ubuntu16.04-x86_64
|
spec: netlib-scalapack@2.0.2%gcc@7.2.0 build_type=RelWithDebInfo ~pic+shared arch=linux-ubuntu16.04-x86_64
|
||||||
spec: netlib-scalapack@2.0.2%gcc@7.2.0 build_type=RelWithDebInfo ~pic+shared arch=linux-ubuntu16.04-x86_64
|
spec: netlib-scalapack@2.0.2%gcc@7.2.0 build_type=RelWithDebInfo ~pic+shared arch=linux-ubuntu16.04-x86_64
|
||||||
spec: netlib-scalapack@2.0.2%gcc@7.2.0 build_type=RelWithDebInfo ~pic+shared arch=linux-ubuntu16.04-x86_64
|
spec: netlib-scalapack@2.0.2%gcc@7.2.0 build_type=RelWithDebInfo ~pic+shared arch=linux-ubuntu16.04-x86_64
|
||||||
@ -678,18 +615,24 @@ Regenerating module files now we obtain:
|
|||||||
|
|
||||||
.. code-block:: console
|
.. code-block:: console
|
||||||
|
|
||||||
root@module-file-tutorial:/# spack module tcl refresh --delete-tree -y
|
$ spack module tcl refresh --delete-tree -y
|
||||||
==> Regenerating tcl module files
|
==> Regenerating tcl module files
|
||||||
|
$ module avail
|
||||||
|
|
||||||
root@module-file-tutorial:/# module av
|
----------------------------------------------- /home/spack1/spack/share/spack/modules/linux-ubuntu16.04-x86_64 -----------------------------------------------
|
||||||
|
autoconf-2.69-gcc-7.2.0 m4-1.4.18-gcc-7.2.0 pkgconf-1.4.2-gcc-7.2.0
|
||||||
-------------------------------------------- /usr/local/share/spack/modules/linux-ubuntu16.04-x86_64 ---------------------------------------------
|
automake-1.16.1-gcc-7.2.0 mpich-3.2.1-gcc-7.2.0 py-numpy-1.15.2-gcc-7.2.0-openblas
|
||||||
bzip2-1.0.6-gcc-7.2.0 netlib-lapack-3.8.0-gcc-7.2.0 openmpi-1.10.2-gcc-7.2.0 python-2.7.15-gcc-7.2.0
|
bzip2-1.0.6-gcc-7.2.0 ncurses-6.1-gcc-7.2.0 py-scipy-1.1.0-gcc-7.2.0-openblas
|
||||||
cmake-3.12.0-gcc-7.2.0 netlib-scalapack-2.0.2-gcc-7.2.0-netlib-mpich openssl-1.0.2o-gcc-7.2.0 readline-7.0-gcc-7.2.0
|
cmake-3.12.3-gcc-7.2.0 netlib-lapack-3.8.0-gcc-7.2.0 py-setuptools-40.4.3-gcc-7.2.0
|
||||||
gcc-7.2.0-gcc-5.4.0 netlib-scalapack-2.0.2-gcc-7.2.0-netlib-openmpi pkgconf-1.4.2-gcc-7.2.0 sqlite-3.23.1-gcc-7.2.0
|
diffutils-3.6-gcc-7.2.0 netlib-scalapack-2.0.2-gcc-7.2.0-netlib-mpich python-2.7.15-gcc-7.2.0
|
||||||
gdbm-1.14.1-gcc-7.2.0 netlib-scalapack-2.0.2-gcc-7.2.0-openblas-mpich py-numpy-1.14.3-gcc-7.2.0-openblas zlib-1.2.11-gcc-7.2.0
|
findutils-4.6.0-gcc-7.2.0 netlib-scalapack-2.0.2-gcc-7.2.0-netlib-openmpi readline-7.0-gcc-7.2.0
|
||||||
mpich-3.2.1-gcc-7.2.0 netlib-scalapack-2.0.2-gcc-7.2.0-openblas-openmpi py-scipy-1.1.0-gcc-7.2.0-openblas
|
gcc-7.2.0-gcc-5.4.0 netlib-scalapack-2.0.2-gcc-7.2.0-openblas-mpich sqlite-3.23.1-gcc-7.2.0
|
||||||
ncurses-6.1-gcc-7.2.0 openblas-0.3.0-gcc-7.2.0 py-setuptools-39.2.0-gcc-7.2.0
|
gdbm-1.14.1-gcc-7.2.0 netlib-scalapack-2.0.2-gcc-7.2.0-openblas-openmpi texinfo-6.5-gcc-7.2.0
|
||||||
|
hwloc-1.11.9-gcc-7.2.0 numactl-2.0.11-gcc-7.2.0 util-macros-1.19.1-gcc-7.2.0
|
||||||
|
libpciaccess-0.13.5-gcc-7.2.0 openblas-0.3.3-gcc-7.2.0 xz-5.2.4-gcc-7.2.0
|
||||||
|
libsigsegv-2.11-gcc-7.2.0 openmpi-3.1.3-gcc-7.2.0 zlib-1.2.11-gcc-7.2.0
|
||||||
|
libtool-2.4.6-gcc-7.2.0 openssl-1.0.2o-gcc-7.2.0
|
||||||
|
libxml2-2.9.8-gcc-7.2.0 perl-5.26.2-gcc-7.2.0
|
||||||
|
|
||||||
Use "module spider" to find all possible modules.
|
Use "module spider" to find all possible modules.
|
||||||
Use "module keyword key1 key2 ..." to search for all possible modules matching any of the "keys".
|
Use "module keyword key1 key2 ..." to search for all possible modules matching any of the "keys".
|
||||||
@ -725,19 +668,24 @@ The final result should look like:
|
|||||||
|
|
||||||
.. code-block:: console
|
.. code-block:: console
|
||||||
|
|
||||||
root@module-file-tutorial:/# spack module tcl refresh --delete-tree -y
|
$ spack module tcl refresh --delete-tree -y
|
||||||
==> Regenerating tcl module files
|
==> Regenerating tcl module files
|
||||||
root@module-file-tutorial:/# module av
|
$ module avail
|
||||||
|
|
||||||
-------------------------------------------- /usr/local/share/spack/modules/linux-ubuntu16.04-x86_64 ---------------------------------------------
|
----------------------------------------------- /home/spack1/spack/share/spack/modules/linux-ubuntu16.04-x86_64 -----------------------------------------------
|
||||||
bzip2/1.0.6-gcc-7.2.0 netlib-scalapack/2.0.2-gcc-7.2.0-netlib-openmpi py-scipy/1.1.0-gcc-7.2.0-openblas
|
autoconf/2.69-gcc-7.2.0 m4/1.4.18-gcc-7.2.0 pkgconf/1.4.2-gcc-7.2.0
|
||||||
cmake/3.12.0-gcc-7.2.0 netlib-scalapack/2.0.2-gcc-7.2.0-openblas-mpich py-setuptools/39.2.0-gcc-7.2.0
|
automake/1.16.1-gcc-7.2.0 mpich/3.2.1-gcc-7.2.0 py-numpy/1.15.2-gcc-7.2.0-openblas
|
||||||
gcc/7.2.0-gcc-5.4.0 netlib-scalapack/2.0.2-gcc-7.2.0-openblas-openmpi (D) python/2.7.15-gcc-7.2.0
|
bzip2/1.0.6-gcc-7.2.0 ncurses/6.1-gcc-7.2.0 py-scipy/1.1.0-gcc-7.2.0-openblas
|
||||||
gdbm/1.14.1-gcc-7.2.0 openblas/0.3.0-gcc-7.2.0 readline/7.0-gcc-7.2.0
|
cmake/3.12.3-gcc-7.2.0 netlib-lapack/3.8.0-gcc-7.2.0 py-setuptools/40.4.3-gcc-7.2.0
|
||||||
mpich/3.2.1-gcc-7.2.0 openmpi/1.10.2-gcc-7.2.0 sqlite/3.23.1-gcc-7.2.0
|
diffutils/3.6-gcc-7.2.0 netlib-scalapack/2.0.2-gcc-7.2.0-netlib-mpich python/2.7.15-gcc-7.2.0
|
||||||
ncurses/6.1-gcc-7.2.0 openssl/1.0.2o-gcc-7.2.0 zlib/1.2.11-gcc-7.2.0
|
findutils/4.6.0-gcc-7.2.0 netlib-scalapack/2.0.2-gcc-7.2.0-netlib-openmpi readline/7.0-gcc-7.2.0
|
||||||
netlib-lapack/3.8.0-gcc-7.2.0 pkgconf/1.4.2-gcc-7.2.0
|
gcc/7.2.0-gcc-5.4.0 netlib-scalapack/2.0.2-gcc-7.2.0-openblas-mpich sqlite/3.23.1-gcc-7.2.0
|
||||||
netlib-scalapack/2.0.2-gcc-7.2.0-netlib-mpich py-numpy/1.14.3-gcc-7.2.0-openblas
|
gdbm/1.14.1-gcc-7.2.0 netlib-scalapack/2.0.2-gcc-7.2.0-openblas-openmpi (D) texinfo/6.5-gcc-7.2.0
|
||||||
|
hwloc/1.11.9-gcc-7.2.0 numactl/2.0.11-gcc-7.2.0 util-macros/1.19.1-gcc-7.2.0
|
||||||
|
libpciaccess/0.13.5-gcc-7.2.0 openblas/0.3.3-gcc-7.2.0 xz/5.2.4-gcc-7.2.0
|
||||||
|
libsigsegv/2.11-gcc-7.2.0 openmpi/3.1.3-gcc-7.2.0 zlib/1.2.11-gcc-7.2.0
|
||||||
|
libtool/2.4.6-gcc-7.2.0 openssl/1.0.2o-gcc-7.2.0
|
||||||
|
libxml2/2.9.8-gcc-7.2.0 perl/5.26.2-gcc-7.2.0
|
||||||
|
|
||||||
Where:
|
Where:
|
||||||
D: Default Module
|
D: Default Module
|
||||||
@ -799,26 +747,26 @@ Regenerating the module files results in something like:
|
|||||||
.. code-block:: console
|
.. code-block:: console
|
||||||
:emphasize-lines: 15
|
:emphasize-lines: 15
|
||||||
|
|
||||||
root@module-file-tutorial:/# spack module tcl refresh -y
|
$ spack module tcl refresh -y
|
||||||
==> Regenerating tcl module files
|
==> Regenerating tcl module files
|
||||||
|
|
||||||
root@module-file-tutorial:/# module show gcc
|
$ module show gcc
|
||||||
----------------------------------------------------------------------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||||
/usr/local/share/spack/modules/linux-ubuntu16.04-x86_64/gcc/7.2.0-gcc-5.4.0:
|
/home/spack1/spack/share/spack/modules/linux-ubuntu16.04-x86_64/gcc/7.2.0-gcc-5.4.0:
|
||||||
----------------------------------------------------------------------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||||
whatis("The GNU Compiler Collection includes front ends for C, C++, Objective-C, Fortran, Ada, and Go, as well as libraries for these languages. ")
|
whatis("The GNU Compiler Collection includes front ends for C, C++, Objective-C, Fortran, Ada, and Go, as well as libraries for these languages. ")
|
||||||
conflict("gcc")
|
conflict("gcc")
|
||||||
prepend_path("PATH","/usr/local/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-wwhgyejrjfjtdsgga3hn246bc64jtr6o/bin")
|
prepend_path("PATH","/home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-b7smjjcsmwe5u5fcsvjmonlhlzzctnfs/bin")
|
||||||
prepend_path("MANPATH","/usr/local/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-wwhgyejrjfjtdsgga3hn246bc64jtr6o/share/man")
|
prepend_path("MANPATH","/home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-b7smjjcsmwe5u5fcsvjmonlhlzzctnfs/share/man")
|
||||||
prepend_path("LD_LIBRARY_PATH","/usr/local/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-wwhgyejrjfjtdsgga3hn246bc64jtr6o/lib")
|
prepend_path("LD_LIBRARY_PATH","/home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-b7smjjcsmwe5u5fcsvjmonlhlzzctnfs/lib")
|
||||||
prepend_path("LD_LIBRARY_PATH","/usr/local/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-wwhgyejrjfjtdsgga3hn246bc64jtr6o/lib64")
|
prepend_path("LD_LIBRARY_PATH","/home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-b7smjjcsmwe5u5fcsvjmonlhlzzctnfs/lib64")
|
||||||
prepend_path("CMAKE_PREFIX_PATH","/usr/local/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-wwhgyejrjfjtdsgga3hn246bc64jtr6o/")
|
prepend_path("CMAKE_PREFIX_PATH","/home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-b7smjjcsmwe5u5fcsvjmonlhlzzctnfs/")
|
||||||
setenv("CC","/usr/local/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-wwhgyejrjfjtdsgga3hn246bc64jtr6o/bin/gcc")
|
setenv("CC","/home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-b7smjjcsmwe5u5fcsvjmonlhlzzctnfs/bin/gcc")
|
||||||
setenv("CXX","/usr/local/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-wwhgyejrjfjtdsgga3hn246bc64jtr6o/bin/g++")
|
setenv("CXX","/home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-b7smjjcsmwe5u5fcsvjmonlhlzzctnfs/bin/g++")
|
||||||
setenv("FC","/usr/local/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-wwhgyejrjfjtdsgga3hn246bc64jtr6o/bin/gfortran")
|
setenv("FC","/home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-b7smjjcsmwe5u5fcsvjmonlhlzzctnfs/bin/gfortran")
|
||||||
setenv("F77","/usr/local/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-wwhgyejrjfjtdsgga3hn246bc64jtr6o/bin/gfortran")
|
setenv("F77","/home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-b7smjjcsmwe5u5fcsvjmonlhlzzctnfs/bin/gfortran")
|
||||||
setenv("F90","/usr/local/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-wwhgyejrjfjtdsgga3hn246bc64jtr6o/bin/gfortran")
|
setenv("F90","/home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-b7smjjcsmwe5u5fcsvjmonlhlzzctnfs/bin/gfortran")
|
||||||
setenv("GCC_ROOT","/usr/local/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-wwhgyejrjfjtdsgga3hn246bc64jtr6o")
|
setenv("GCC_ROOT","/home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-b7smjjcsmwe5u5fcsvjmonlhlzzctnfs")
|
||||||
help([[The GNU Compiler Collection includes front ends for C, C++, Objective-C,
|
help([[The GNU Compiler Collection includes front ends for C, C++, Objective-C,
|
||||||
Fortran, Ada, and Go, as well as libraries for these languages.
|
Fortran, Ada, and Go, as well as libraries for these languages.
|
||||||
]])
|
]])
|
||||||
@ -875,48 +823,50 @@ This time we will be more selective and regenerate only the ``gcc`` and
|
|||||||
|
|
||||||
.. code-block:: console
|
.. code-block:: console
|
||||||
|
|
||||||
root@module-file-tutorial:/# spack module tcl refresh -y gcc
|
$ spack module tcl refresh -y gcc
|
||||||
==> Regenerating tcl module files
|
==> Regenerating tcl module files
|
||||||
|
|
||||||
root@module-file-tutorial:/# spack module tcl refresh -y openmpi
|
$ spack module tcl refresh -y openmpi
|
||||||
==> Regenerating tcl module files
|
==> Regenerating tcl module files
|
||||||
|
|
||||||
root@module-file-tutorial:/# module show gcc
|
$ module show gcc
|
||||||
----------------------------------------------------------------------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||||
/usr/local/share/spack/modules/linux-ubuntu16.04-x86_64/gcc/7.2.0-gcc-5.4.0:
|
/home/spack1/spack/share/spack/modules/linux-ubuntu16.04-x86_64/gcc/7.2.0-gcc-5.4.0:
|
||||||
----------------------------------------------------------------------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||||
whatis("The GNU Compiler Collection includes front ends for C, C++, Objective-C, Fortran, Ada, and Go, as well as libraries for these languages. ")
|
whatis("The GNU Compiler Collection includes front ends for C, C++, Objective-C, Fortran, Ada, and Go, as well as libraries for these languages. ")
|
||||||
conflict("gcc")
|
conflict("gcc")
|
||||||
prepend_path("PATH","/usr/local/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-wwhgyejrjfjtdsgga3hn246bc64jtr6o/bin")
|
prepend_path("PATH","/home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-b7smjjcsmwe5u5fcsvjmonlhlzzctnfs/bin")
|
||||||
prepend_path("MANPATH","/usr/local/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-wwhgyejrjfjtdsgga3hn246bc64jtr6o/share/man")
|
prepend_path("MANPATH","/home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-b7smjjcsmwe5u5fcsvjmonlhlzzctnfs/share/man")
|
||||||
prepend_path("LD_LIBRARY_PATH","/usr/local/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-wwhgyejrjfjtdsgga3hn246bc64jtr6o/lib")
|
prepend_path("LD_LIBRARY_PATH","/home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-b7smjjcsmwe5u5fcsvjmonlhlzzctnfs/lib")
|
||||||
prepend_path("LD_LIBRARY_PATH","/usr/local/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-wwhgyejrjfjtdsgga3hn246bc64jtr6o/lib64")
|
prepend_path("LD_LIBRARY_PATH","/home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-b7smjjcsmwe5u5fcsvjmonlhlzzctnfs/lib64")
|
||||||
prepend_path("CMAKE_PREFIX_PATH","/usr/local/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-wwhgyejrjfjtdsgga3hn246bc64jtr6o/")
|
prepend_path("CMAKE_PREFIX_PATH","/home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-b7smjjcsmwe5u5fcsvjmonlhlzzctnfs/")
|
||||||
setenv("CC","/usr/local/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-wwhgyejrjfjtdsgga3hn246bc64jtr6o/bin/gcc")
|
setenv("CC","/home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-b7smjjcsmwe5u5fcsvjmonlhlzzctnfs/bin/gcc")
|
||||||
setenv("CXX","/usr/local/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-wwhgyejrjfjtdsgga3hn246bc64jtr6o/bin/g++")
|
setenv("CXX","/home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-b7smjjcsmwe5u5fcsvjmonlhlzzctnfs/bin/g++")
|
||||||
setenv("FC","/usr/local/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-wwhgyejrjfjtdsgga3hn246bc64jtr6o/bin/gfortran")
|
setenv("FC","/home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-b7smjjcsmwe5u5fcsvjmonlhlzzctnfs/bin/gfortran")
|
||||||
setenv("F77","/usr/local/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-wwhgyejrjfjtdsgga3hn246bc64jtr6o/bin/gfortran")
|
setenv("F77","/home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-b7smjjcsmwe5u5fcsvjmonlhlzzctnfs/bin/gfortran")
|
||||||
setenv("F90","/usr/local/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-wwhgyejrjfjtdsgga3hn246bc64jtr6o/bin/gfortran")
|
setenv("F90","/home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-b7smjjcsmwe5u5fcsvjmonlhlzzctnfs/bin/gfortran")
|
||||||
setenv("GCC_ROOT","/usr/local/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-wwhgyejrjfjtdsgga3hn246bc64jtr6o")
|
setenv("GCC_ROOT","/home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/gcc-7.2.0-b7smjjcsmwe5u5fcsvjmonlhlzzctnfs")
|
||||||
setenv("CC","gcc")
|
setenv("CC","gcc")
|
||||||
setenv("CXX","g++")
|
setenv("CXX","g++'")
|
||||||
setenv("FC","gfortran")
|
setenv("FC","gfortran")
|
||||||
setenv("F90","gfortran")
|
|
||||||
setenv("F77","gfortran")
|
setenv("F77","gfortran")
|
||||||
|
setenv("F90","gfortran")
|
||||||
help([[The GNU Compiler Collection includes front ends for C, C++, Objective-C,
|
help([[The GNU Compiler Collection includes front ends for C, C++, Objective-C,
|
||||||
Fortran, Ada, and Go, as well as libraries for these languages.
|
Fortran, Ada, and Go, as well as libraries for these languages.
|
||||||
]])
|
]])
|
||||||
|
|
||||||
root@module-file-tutorial:/# module show openmpi
|
$ module show openmpi
|
||||||
----------------------------------------------------------------------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||||
/usr/local/share/spack/modules/linux-ubuntu16.04-x86_64/openmpi/1.10.2-gcc-7.2.0:
|
/home/spack1/spack/share/spack/modules/linux-ubuntu16.04-x86_64/openmpi/3.1.3-gcc-7.2.0:
|
||||||
----------------------------------------------------------------------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||||
whatis("An open source Message Passing Interface implementation. ")
|
whatis("An open source Message Passing Interface implementation. ")
|
||||||
conflict("openmpi")
|
conflict("openmpi")
|
||||||
prepend_path("MANPATH","/usr/share/man")
|
prepend_path("PATH","/home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-7.2.0/openmpi-3.1.3-do5xfer2whhk7gc26atgs3ozr3ljbvs4/bin")
|
||||||
prepend_path("ACLOCAL_PATH","/usr/share/aclocal")
|
prepend_path("MANPATH","/home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-7.2.0/openmpi-3.1.3-do5xfer2whhk7gc26atgs3ozr3ljbvs4/share/man")
|
||||||
prepend_path("PKG_CONFIG_PATH","/usr/lib/pkgconfig")
|
prepend_path("LD_LIBRARY_PATH","/home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-7.2.0/openmpi-3.1.3-do5xfer2whhk7gc26atgs3ozr3ljbvs4/lib")
|
||||||
setenv("OPENMPI_ROOT","/usr")
|
prepend_path("PKG_CONFIG_PATH","/home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-7.2.0/openmpi-3.1.3-do5xfer2whhk7gc26atgs3ozr3ljbvs4/lib/pkgconfig")
|
||||||
|
prepend_path("CMAKE_PREFIX_PATH","/home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-7.2.0/openmpi-3.1.3-do5xfer2whhk7gc26atgs3ozr3ljbvs4/")
|
||||||
|
setenv("OPENMPI_ROOT","/home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-7.2.0/openmpi-3.1.3-do5xfer2whhk7gc26atgs3ozr3ljbvs4")
|
||||||
setenv("SLURM_MPI_TYPE","pmi2")
|
setenv("SLURM_MPI_TYPE","pmi2")
|
||||||
setenv("OMPI_MCA_btl_openib_warn_default_gid_prefix","0")
|
setenv("OMPI_MCA_btl_openib_warn_default_gid_prefix","0")
|
||||||
help([[An open source Message Passing Interface implementation. The Open MPI
|
help([[An open source Message Passing Interface implementation. The Open MPI
|
||||||
@ -994,9 +944,9 @@ Now the ``py-scipy`` module will be:
|
|||||||
.. code-block:: tcl
|
.. code-block:: tcl
|
||||||
|
|
||||||
#%Module1.0
|
#%Module1.0
|
||||||
## Module file created by spack (https://github.com/spack/spack) on 2018-07-10 15:15:09.308128
|
## Module file created by spack (https://github.com/spack/spack) on 2018-11-11 22:10:48.834221
|
||||||
##
|
##
|
||||||
## py-scipy@1.1.0%gcc@7.2.0 arch=linux-ubuntu16.04-x86_64 /fdiryak
|
## py-scipy@1.1.0%gcc@7.2.0 arch=linux-ubuntu16.04-x86_64 /d5n3cph
|
||||||
##
|
##
|
||||||
|
|
||||||
|
|
||||||
@ -1008,33 +958,33 @@ Now the ``py-scipy`` module will be:
|
|||||||
puts stderr "routines for numerical integration and optimization."
|
puts stderr "routines for numerical integration and optimization."
|
||||||
}
|
}
|
||||||
|
|
||||||
if ![ is-loaded python/2.7.15-gcc-7.2.0 ] {
|
if { [ module-info mode load ] && ![ is-loaded python/2.7.15-gcc-7.2.0 ] } {
|
||||||
puts stderr "Autoloading python/2.7.15-gcc-7.2.0"
|
puts stderr "Autoloading python/2.7.15-gcc-7.2.0"
|
||||||
module load python/2.7.15-gcc-7.2.0
|
module load python/2.7.15-gcc-7.2.0
|
||||||
}
|
}
|
||||||
if ![ is-loaded openblas/0.3.0-gcc-7.2.0 ] {
|
if { [ module-info mode load ] && ![ is-loaded openblas/0.3.3-gcc-7.2.0 ] } {
|
||||||
puts stderr "Autoloading openblas/0.3.0-gcc-7.2.0"
|
puts stderr "Autoloading openblas/0.3.3-gcc-7.2.0"
|
||||||
module load openblas/0.3.0-gcc-7.2.0
|
module load openblas/0.3.3-gcc-7.2.0
|
||||||
}
|
}
|
||||||
if ![ is-loaded py-numpy/1.14.3-gcc-7.2.0-openblas ] {
|
if { [ module-info mode load ] && ![ is-loaded py-numpy/1.15.2-gcc-7.2.0-openblas ] } {
|
||||||
puts stderr "Autoloading py-numpy/1.14.3-gcc-7.2.0-openblas"
|
puts stderr "Autoloading py-numpy/1.15.2-gcc-7.2.0-openblas"
|
||||||
module load py-numpy/1.14.3-gcc-7.2.0-openblas
|
module load py-numpy/1.15.2-gcc-7.2.0-openblas
|
||||||
}
|
}
|
||||||
conflict py-scipy
|
conflict py-scipy
|
||||||
|
|
||||||
prepend-path LD_LIBRARY_PATH "/usr/local/opt/spack/linux-ubuntu16.04-x86_64/gcc-7.2.0/py-scipy-1.1.0-fdiryak4ywv2krvqo7uzogfcc6uckkdp/lib"
|
prepend-path LD_LIBRARY_PATH "/home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-7.2.0/py-scipy-1.1.0-d5n3cphk2lx2v74ypwb6h7tna7vvgdyn/lib"
|
||||||
prepend-path CMAKE_PREFIX_PATH "/usr/local/opt/spack/linux-ubuntu16.04-x86_64/gcc-7.2.0/py-scipy-1.1.0-fdiryak4ywv2krvqo7uzogfcc6uckkdp/"
|
prepend-path CMAKE_PREFIX_PATH "/home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-7.2.0/py-scipy-1.1.0-d5n3cphk2lx2v74ypwb6h7tna7vvgdyn/"
|
||||||
prepend-path PYTHONPATH "/usr/local/opt/spack/linux-ubuntu16.04-x86_64/gcc-7.2.0/py-scipy-1.1.0-fdiryak4ywv2krvqo7uzogfcc6uckkdp/lib/python2.7/site-packages"
|
prepend-path PYTHONPATH "/home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-7.2.0/py-scipy-1.1.0-d5n3cphk2lx2v74ypwb6h7tna7vvgdyn/lib/python2.7/site-packages"
|
||||||
setenv PY_SCIPY_ROOT "/usr/local/opt/spack/linux-ubuntu16.04-x86_64/gcc-7.2.0/py-scipy-1.1.0-fdiryak4ywv2krvqo7uzogfcc6uckkdp"
|
setenv PY_SCIPY_ROOT "/home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-7.2.0/py-scipy-1.1.0-d5n3cphk2lx2v74ypwb6h7tna7vvgdyn"
|
||||||
|
|
||||||
and will contain code to autoload all the dependencies:
|
and will contain code to autoload all the dependencies:
|
||||||
|
|
||||||
.. code-block:: console
|
.. code-block:: console
|
||||||
|
|
||||||
root@module-file-tutorial:/# module load py-scipy
|
$ module load py-scipy
|
||||||
Autoloading python/2.7.15-gcc-7.2.0
|
Autoloading python/2.7.15-gcc-7.2.0
|
||||||
Autoloading openblas/0.3.0-gcc-7.2.0
|
Autoloading openblas/0.3.3-gcc-7.2.0
|
||||||
Autoloading py-numpy/1.14.3-gcc-7.2.0-openblas
|
Autoloading py-numpy/1.15.2-gcc-7.2.0-openblas
|
||||||
|
|
||||||
In case messages are unwanted during the autoload procedure, it will be
|
In case messages are unwanted during the autoload procedure, it will be
|
||||||
sufficient to omit the line setting ``verbose: True`` in the configuration file above.
|
sufficient to omit the line setting ``verbose: True`` in the configuration file above.
|
||||||
@ -1050,20 +1000,22 @@ all the software is visible at the same time:
|
|||||||
|
|
||||||
.. code-block:: console
|
.. code-block:: console
|
||||||
|
|
||||||
root@module-file-tutorial:/# module avail
|
$ module avail
|
||||||
|
|
||||||
-------------------------------------------- /usr/local/share/spack/modules/linux-ubuntu16.04-x86_64 ---------------------------------------------
|
----------------------------------------------- /home/spack1/spack/share/spack/modules/linux-ubuntu16.04-x86_64 -----------------------------------------------
|
||||||
bzip2/1.0.6-gcc-7.2.0 openblas/0.3.0-gcc-7.2.0 (L)
|
autoconf/2.69-gcc-7.2.0 m4/1.4.18-gcc-7.2.0 pkgconf/1.4.2-gcc-7.2.0
|
||||||
cmake/3.11.4-gcc-7.2.0 openmpi/1.10.2-gcc-7.2.0
|
automake/1.16.1-gcc-7.2.0 mpich/3.2.1-gcc-7.2.0 py-numpy/1.15.2-gcc-7.2.0-openblas (L)
|
||||||
gcc/7.2.0-gcc-5.4.0 openssl/1.0.2o-gcc-7.2.0
|
bzip2/1.0.6-gcc-7.2.0 ncurses/6.1-gcc-7.2.0 py-scipy/1.1.0-gcc-7.2.0-openblas (L)
|
||||||
gdbm/1.14.1-gcc-7.2.0 pkgconf/1.4.2-gcc-7.2.0
|
cmake/3.12.3-gcc-7.2.0 netlib-lapack/3.8.0-gcc-7.2.0 py-setuptools/40.4.3-gcc-7.2.0
|
||||||
mpich/3.2.1-gcc-7.2.0 py-numpy/1.14.3-gcc-7.2.0-openblas (L)
|
diffutils/3.6-gcc-7.2.0 netlib-scalapack/2.0.2-gcc-7.2.0-netlib-mpich python/2.7.15-gcc-7.2.0 (L)
|
||||||
ncurses/6.1-gcc-7.2.0 py-scipy/1.1.0-gcc-7.2.0-openblas (L)
|
findutils/4.6.0-gcc-7.2.0 netlib-scalapack/2.0.2-gcc-7.2.0-netlib-openmpi readline/7.0-gcc-7.2.0
|
||||||
netlib-lapack/3.8.0-gcc-7.2.0 py-setuptools/39.2.0-gcc-7.2.0
|
gcc/7.2.0-gcc-5.4.0 netlib-scalapack/2.0.2-gcc-7.2.0-openblas-mpich sqlite/3.23.1-gcc-7.2.0
|
||||||
netlib-scalapack/2.0.2-gcc-7.2.0-netlib-mpich python/2.7.15-gcc-7.2.0 (L)
|
gdbm/1.14.1-gcc-7.2.0 netlib-scalapack/2.0.2-gcc-7.2.0-openblas-openmpi (D) texinfo/6.5-gcc-7.2.0
|
||||||
netlib-scalapack/2.0.2-gcc-7.2.0-netlib-openmpi readline/7.0-gcc-7.2.0
|
hwloc/1.11.9-gcc-7.2.0 numactl/2.0.11-gcc-7.2.0 util-macros/1.19.1-gcc-7.2.0
|
||||||
netlib-scalapack/2.0.2-gcc-7.2.0-openblas-mpich sqlite/3.23.1-gcc-7.2.0
|
libpciaccess/0.13.5-gcc-7.2.0 openblas/0.3.3-gcc-7.2.0 (L) xz/5.2.4-gcc-7.2.0
|
||||||
netlib-scalapack/2.0.2-gcc-7.2.0-openblas-openmpi (D) zlib/1.2.11-gcc-7.2.0
|
libsigsegv/2.11-gcc-7.2.0 openmpi/3.1.3-gcc-7.2.0 zlib/1.2.11-gcc-7.2.0
|
||||||
|
libtool/2.4.6-gcc-7.2.0 openssl/1.0.2o-gcc-7.2.0
|
||||||
|
libxml2/2.9.8-gcc-7.2.0 perl/5.26.2-gcc-7.2.0
|
||||||
|
|
||||||
Where:
|
Where:
|
||||||
L: Module is loaded
|
L: Module is loaded
|
||||||
@ -1077,12 +1029,12 @@ that nothing prevents users from loading incompatible sets of modules:
|
|||||||
|
|
||||||
.. code-block:: console
|
.. code-block:: console
|
||||||
|
|
||||||
root@module-file-tutorial:/# module purge
|
$ module purge
|
||||||
root@module-file-tutorial:/# module load netlib-lapack/3.8.0-gcc-7.2.0 openblas/0.3.0-gcc-7.2.0
|
$ module load netlib-lapack/3.8.0-gcc-7.2.0 openblas/0.3.3-gcc-7.2.0
|
||||||
root@module-file-tutorial:/# module list
|
$ module list
|
||||||
|
|
||||||
Currently Loaded Modules:
|
Currently Loaded Modules:
|
||||||
1) netlib-lapack/3.8.0-gcc-7.2.0 2) openblas/0.3.0-gcc-7.2.0
|
1) netlib-lapack/3.8.0-gcc-7.2.0 2) openblas/0.3.3-gcc-7.2.0
|
||||||
|
|
||||||
Even if ``conflicts`` directives are carefully placed in module files, they:
|
Even if ``conflicts`` directives are carefully placed in module files, they:
|
||||||
|
|
||||||
@ -1170,24 +1122,24 @@ If we now regenerate the module files:
|
|||||||
|
|
||||||
.. code-block:: console
|
.. code-block:: console
|
||||||
|
|
||||||
root@module-file-tutorial:/# spack module lmod refresh --delete-tree -y
|
$ spack module lmod refresh --delete-tree -y
|
||||||
==> Regenerating lmod module files
|
==> Regenerating lmod module files
|
||||||
|
|
||||||
and update ``MODULEPATH`` to point to the ``Core``:
|
and update ``MODULEPATH`` to point to the ``Core``:
|
||||||
|
|
||||||
.. code-block:: console
|
.. code-block:: console
|
||||||
|
|
||||||
root@module-file-tutorial:/# module purge
|
$ module purge
|
||||||
root@module-file-tutorial:/# module unuse /usr/local/share/spack/modules/linux-ubuntu16.04-x86_64
|
$ module unuse /home/spack1/spack/share/spack/modules/linux-ubuntu16.04-x86_64
|
||||||
root@module-file-tutorial:/# module use /usr/local/share/spack/lmod/linux-ubuntu16.04-x86_64/Core
|
$ module use /home/spack1/spack/share/spack/lmod/linux-ubuntu16.04-x86_64/Core
|
||||||
|
|
||||||
asking for the available modules will return:
|
asking for the available modules will return:
|
||||||
|
|
||||||
.. code-block:: console
|
.. code-block:: console
|
||||||
|
|
||||||
root@module-file-tutorial:/# module avail
|
$ module avail
|
||||||
|
|
||||||
------------------------------------------- /usr/local/share/spack/lmod/linux-ubuntu16.04-x86_64/Core --------------------------------------------
|
----------------------------------------------------------- share/spack/lmod/linux-ubuntu16.04-x86_64/Core ------------------------------------------------------------
|
||||||
gcc/7.2.0
|
gcc/7.2.0
|
||||||
|
|
||||||
Use "module spider" to find all possible modules.
|
Use "module spider" to find all possible modules.
|
||||||
@ -1198,15 +1150,17 @@ the ``Compiler`` part of the hierarchy:
|
|||||||
|
|
||||||
.. code-block:: console
|
.. code-block:: console
|
||||||
|
|
||||||
root@module-file-tutorial:/# module load gcc
|
$ module load gcc
|
||||||
root@module-file-tutorial:/# module avail
|
$ module avail
|
||||||
|
|
||||||
----------------------------------------- /usr/local/share/spack/lmod/linux-ubuntu16.04-x86_64/gcc/7.2.0 -----------------------------------------
|
------------------------------------------- /home/spack1/spack/share/spack/lmod/linux-ubuntu16.04-x86_64/gcc/7.2.0 --------------------------------------------
|
||||||
bzip2/1.0.6 mpich/3.2.1 openblas/0.3.0 pkgconf/1.4.2 py-setuptools/39.2.0 sqlite/3.23.1
|
autoconf/2.69 findutils/4.6.0 libtool/2.4.6 netlib-lapack/3.8.0 perl/5.26.2 python/2.7.15 xz/5.2.4
|
||||||
cmake/3.12.0 ncurses/6.1 openmpi/1.10.2 py-numpy/1.14.3-openblas python/2.7.15 zlib/1.2.11
|
automake/1.16.1 gdbm/1.14.1 libxml2/2.9.8 numactl/2.0.11 pkgconf/1.4.2 readline/7.0 zlib/1.2.11
|
||||||
gdbm/1.14.1 netlib-lapack/3.8.0 openssl/1.0.2o py-scipy/1.1.0-openblas readline/7.0
|
bzip2/1.0.6 hwloc/1.11.9 m4/1.4.18 openblas/0.3.3 py-numpy/1.15.2-openblas sqlite/3.23.1
|
||||||
|
cmake/3.12.3 libpciaccess/0.13.5 mpich/3.2.1 openmpi/3.1.3 py-scipy/1.1.0-openblas texinfo/6.5
|
||||||
|
diffutils/3.6 libsigsegv/2.11 ncurses/6.1 openssl/1.0.2o py-setuptools/40.4.3 util-macros/1.19.1
|
||||||
|
|
||||||
------------------------------------------- /usr/local/share/spack/lmod/linux-ubuntu16.04-x86_64/Core --------------------------------------------
|
----------------------------------------------------------- share/spack/lmod/linux-ubuntu16.04-x86_64/Core ------------------------------------------------------------
|
||||||
gcc/7.2.0 (L)
|
gcc/7.2.0 (L)
|
||||||
|
|
||||||
Where:
|
Where:
|
||||||
@ -1220,18 +1174,20 @@ either ``mpich`` or ``openmpi``. Let's start by loading ``mpich``:
|
|||||||
|
|
||||||
.. code-block:: console
|
.. code-block:: console
|
||||||
|
|
||||||
root@module-file-tutorial:/# module load mpich
|
$ module load mpich
|
||||||
root@module-file-tutorial:/# module avail
|
$ module avail
|
||||||
|
|
||||||
------------------------------- /usr/local/share/spack/lmod/linux-ubuntu16.04-x86_64/mpich/3.2.1-vt5xcat/gcc/7.2.0 -------------------------------
|
--------------------------------- /home/spack1/spack/share/spack/lmod/linux-ubuntu16.04-x86_64/mpich/3.2.1-vt5xcat/gcc/7.2.0 ----------------------------------
|
||||||
netlib-scalapack/2.0.2-netlib netlib-scalapack/2.0.2-openblas (D)
|
netlib-scalapack/2.0.2-netlib netlib-scalapack/2.0.2-openblas (D)
|
||||||
|
|
||||||
----------------------------------------- /usr/local/share/spack/lmod/linux-ubuntu16.04-x86_64/gcc/7.2.0 -----------------------------------------
|
------------------------------------------- /home/spack1/spack/share/spack/lmod/linux-ubuntu16.04-x86_64/gcc/7.2.0 --------------------------------------------
|
||||||
bzip2/1.0.6 mpich/3.2.1 (L) openblas/0.3.0 pkgconf/1.4.2 py-setuptools/39.2.0 sqlite/3.23.1
|
autoconf/2.69 findutils/4.6.0 libtool/2.4.6 netlib-lapack/3.8.0 perl/5.26.2 python/2.7.15 xz/5.2.4
|
||||||
cmake/3.12.0 ncurses/6.1 openmpi/1.10.2 py-numpy/1.14.3-openblas python/2.7.15 zlib/1.2.11
|
automake/1.16.1 gdbm/1.14.1 libxml2/2.9.8 numactl/2.0.11 pkgconf/1.4.2 readline/7.0 zlib/1.2.11
|
||||||
gdbm/1.14.1 netlib-lapack/3.8.0 openssl/1.0.2o py-scipy/1.1.0-openblas readline/7.0
|
bzip2/1.0.6 hwloc/1.11.9 m4/1.4.18 openblas/0.3.3 py-numpy/1.15.2-openblas sqlite/3.23.1
|
||||||
|
cmake/3.12.3 libpciaccess/0.13.5 mpich/3.2.1 (L) openmpi/3.1.3 py-scipy/1.1.0-openblas texinfo/6.5
|
||||||
|
diffutils/3.6 libsigsegv/2.11 ncurses/6.1 openssl/1.0.2o py-setuptools/40.4.3 util-macros/1.19.1
|
||||||
|
|
||||||
------------------------------------------- /usr/local/share/spack/lmod/linux-ubuntu16.04-x86_64/Core --------------------------------------------
|
----------------------------------------------------------- share/spack/lmod/linux-ubuntu16.04-x86_64/Core ------------------------------------------------------------
|
||||||
gcc/7.2.0 (L)
|
gcc/7.2.0 (L)
|
||||||
|
|
||||||
Where:
|
Where:
|
||||||
@ -1246,16 +1202,17 @@ either ``mpich`` or ``openmpi``. Let's start by loading ``mpich``:
|
|||||||
root@module-file-tutorial:/# module list
|
root@module-file-tutorial:/# module list
|
||||||
|
|
||||||
Currently Loaded Modules:
|
Currently Loaded Modules:
|
||||||
1) gcc/7.2.0 2) mpich/3.2.1 3) openblas/0.3.0 4) netlib-scalapack/2.0.2-openblas
|
1) gcc/7.2.0 2) mpich/3.2.1 3) openblas/0.3.3 4) netlib-scalapack/2.0.2-openblas
|
||||||
|
|
||||||
At this point we can showcase the improved consistency that a hierarchical layout provides
|
At this point we can showcase the improved consistency that a hierarchical layout provides
|
||||||
over a non-hierarchical one:
|
over a non-hierarchical one:
|
||||||
|
|
||||||
.. code-block:: console
|
.. code-block:: console
|
||||||
|
|
||||||
root@module-file-tutorial:/# module load openmpi
|
$ module load openmpi
|
||||||
|
|
||||||
|
Lmod is automatically replacing "mpich/3.2.1" with "openmpi/3.1.3".
|
||||||
|
|
||||||
Lmod is automatically replacing "mpich/3.2.1" with "openmpi/1.10.2".
|
|
||||||
|
|
||||||
Due to MODULEPATH changes, the following have been reloaded:
|
Due to MODULEPATH changes, the following have been reloaded:
|
||||||
1) netlib-scalapack/2.0.2-openblas
|
1) netlib-scalapack/2.0.2-openblas
|
||||||
@ -1284,7 +1241,7 @@ for ``LAPACK`` implementations:
|
|||||||
root@module-file-tutorial:/# module list
|
root@module-file-tutorial:/# module list
|
||||||
|
|
||||||
Currently Loaded Modules:
|
Currently Loaded Modules:
|
||||||
1) gcc/7.2.0 2) openblas/0.3.0 3) openmpi/1.10.2 4) netlib-scalapack/2.0.2-openblas
|
1) gcc/7.2.0 2) openblas/0.3.3 3) openmpi/3.1.3 4) netlib-scalapack/2.0.2-openblas
|
||||||
|
|
||||||
root@module-file-tutorial:/# module load netlib-scalapack/2.0.2-netlib
|
root@module-file-tutorial:/# module load netlib-scalapack/2.0.2-netlib
|
||||||
|
|
||||||
@ -1294,7 +1251,7 @@ for ``LAPACK`` implementations:
|
|||||||
root@module-file-tutorial:/# module list
|
root@module-file-tutorial:/# module list
|
||||||
|
|
||||||
Currently Loaded Modules:
|
Currently Loaded Modules:
|
||||||
1) gcc/7.2.0 2) openblas/0.3.0 3) openmpi/1.10.2 4) netlib-scalapack/2.0.2-netlib
|
1) gcc/7.2.0 2) openblas/0.3.3 3) openmpi/3.1.3 4) netlib-scalapack/2.0.2-netlib
|
||||||
|
|
||||||
Hierarchies that are deeper than ``Core``/``Compiler``/``MPI`` are
|
Hierarchies that are deeper than ``Core``/``Compiler``/``MPI`` are
|
||||||
probably still considered "unusual" or "impractical" at many sites, mainly because
|
probably still considered "unusual" or "impractical" at many sites, mainly because
|
||||||
@ -1369,19 +1326,21 @@ we can see that now we have additional components in the hierarchy:
|
|||||||
|
|
||||||
.. code-block:: console
|
.. code-block:: console
|
||||||
|
|
||||||
root@module-file-tutorial:/# module load gcc
|
$ module load gcc
|
||||||
root@module-file-tutorial:/# module load openblas
|
$ module load openblas
|
||||||
root@module-file-tutorial:/# module avail
|
$ module avail
|
||||||
|
|
||||||
----------------------------- /usr/local/share/spack/lmod/linux-ubuntu16.04-x86_64/openblas/0.3.0-pdatzbi/gcc/7.2.0 ------------------------------
|
-------------------------------- /home/spack1/spack/share/spack/lmod/linux-ubuntu16.04-x86_64/openblas/0.3.3-xxoxfh4/gcc/7.2.0 --------------------------------
|
||||||
py-numpy/1.14.3 py-scipy/1.1.0
|
py-numpy/1.15.2 py-scipy/1.1.0
|
||||||
|
|
||||||
----------------------------------------- /usr/local/share/spack/lmod/linux-ubuntu16.04-x86_64/gcc/7.2.0 -----------------------------------------
|
------------------------------------------- /home/spack1/spack/share/spack/lmod/linux-ubuntu16.04-x86_64/gcc/7.2.0 --------------------------------------------
|
||||||
bzip2/1.0.6 mpich/3.2.1 openblas/0.3.0 (L) pkgconf/1.4.2 readline/7.0
|
autoconf/2.69 findutils/4.6.0 libtool/2.4.6 netlib-lapack/3.8.0 perl/5.26.2 sqlite/3.23.1
|
||||||
cmake/3.12.0 ncurses/6.1 openmpi/1.10.2 py-setuptools/39.2.0 sqlite/3.23.1
|
automake/1.16.1 gdbm/1.14.1 libxml2/2.9.8 numactl/2.0.11 pkgconf/1.4.2 texinfo/6.5
|
||||||
gdbm/1.14.1 netlib-lapack/3.8.0 openssl/1.0.2o python/2.7.15 zlib/1.2.11
|
bzip2/1.0.6 hwloc/1.11.9 m4/1.4.18 openblas/0.3.3 (L) py-setuptools/40.4.3 util-macros/1.19.1
|
||||||
|
cmake/3.12.3 libpciaccess/0.13.5 mpich/3.2.1 openmpi/3.1.3 python/2.7.15 xz/5.2.4
|
||||||
|
diffutils/3.6 libsigsegv/2.11 ncurses/6.1 openssl/1.0.2o readline/7.0 zlib/1.2.11
|
||||||
|
|
||||||
------------------------------------------- /usr/local/share/spack/lmod/linux-ubuntu16.04-x86_64/Core --------------------------------------------
|
----------------------------------------------------------- share/spack/lmod/linux-ubuntu16.04-x86_64/Core ------------------------------------------------------------
|
||||||
gcc/7.2.0 (L)
|
gcc/7.2.0 (L)
|
||||||
|
|
||||||
Where:
|
Where:
|
||||||
@ -1391,21 +1350,23 @@ we can see that now we have additional components in the hierarchy:
|
|||||||
Use "module keyword key1 key2 ..." to search for all possible modules matching any of the "keys".
|
Use "module keyword key1 key2 ..." to search for all possible modules matching any of the "keys".
|
||||||
|
|
||||||
|
|
||||||
root@module-file-tutorial:/# module load openmpi
|
$ module load openmpi
|
||||||
root@module-file-tutorial:/# module avail
|
$ module avail
|
||||||
|
|
||||||
------------------ /usr/local/share/spack/lmod/linux-ubuntu16.04-x86_64/openmpi/1.10.2-6oewzwj/openblas/0.3.0-pdatzbi/gcc/7.2.0 ------------------
|
--------------------- /home/spack1/spack/share/spack/lmod/linux-ubuntu16.04-x86_64/openmpi/3.1.3-do5xfer/openblas/0.3.3-xxoxfh4/gcc/7.2.0 ---------------------
|
||||||
netlib-scalapack/2.0.2
|
netlib-scalapack/2.0.2
|
||||||
|
|
||||||
----------------------------- /usr/local/share/spack/lmod/linux-ubuntu16.04-x86_64/openblas/0.3.0-pdatzbi/gcc/7.2.0 ------------------------------
|
-------------------------------- /home/spack1/spack/share/spack/lmod/linux-ubuntu16.04-x86_64/openblas/0.3.3-xxoxfh4/gcc/7.2.0 --------------------------------
|
||||||
py-numpy/1.14.3 py-scipy/1.1.0
|
py-numpy/1.15.2 py-scipy/1.1.0
|
||||||
|
|
||||||
----------------------------------------- /usr/local/share/spack/lmod/linux-ubuntu16.04-x86_64/gcc/7.2.0 -----------------------------------------
|
------------------------------------------- /home/spack1/spack/share/spack/lmod/linux-ubuntu16.04-x86_64/gcc/7.2.0 --------------------------------------------
|
||||||
bzip2/1.0.6 mpich/3.2.1 openblas/0.3.0 (L) pkgconf/1.4.2 readline/7.0
|
autoconf/2.69 findutils/4.6.0 libtool/2.4.6 netlib-lapack/3.8.0 perl/5.26.2 sqlite/3.23.1
|
||||||
cmake/3.11.4 ncurses/6.1 openmpi/1.10.2 (L) py-setuptools/39.2.0 sqlite/3.23.1
|
automake/1.16.1 gdbm/1.14.1 libxml2/2.9.8 numactl/2.0.11 pkgconf/1.4.2 texinfo/6.5
|
||||||
gdbm/1.14.1 netlib-lapack/3.8.0 openssl/1.0.2o python/2.7.15 zlib/1.2.11
|
bzip2/1.0.6 hwloc/1.11.9 m4/1.4.18 openblas/0.3.3 (L) py-setuptools/40.4.3 util-macros/1.19.1
|
||||||
|
cmake/3.12.3 libpciaccess/0.13.5 mpich/3.2.1 openmpi/3.1.3 (L) python/2.7.15 xz/5.2.4
|
||||||
|
diffutils/3.6 libsigsegv/2.11 ncurses/6.1 openssl/1.0.2o readline/7.0 zlib/1.2.11
|
||||||
|
|
||||||
------------------------------------------- /usr/local/share/spack/lmod/linux-ubuntu16.04-x86_64/Core --------------------------------------------
|
---------------------------------------------- /home/spack1/spack/share/spack/lmod/linux-ubuntu16.04-x86_64/Core ----------------------------------------------
|
||||||
gcc/7.2.0 (L)
|
gcc/7.2.0 (L)
|
||||||
|
|
||||||
Where:
|
Where:
|
||||||
@ -1418,20 +1379,23 @@ Both ``MPI`` and ``LAPACK`` providers will now benefit from the same safety feat
|
|||||||
|
|
||||||
.. code-block:: console
|
.. code-block:: console
|
||||||
|
|
||||||
root@module-file-tutorial:/# module load py-numpy netlib-scalapack
|
$ module load py-numpy netlib-scalapack
|
||||||
root@module-file-tutorial:/# module load mpich
|
$ module load mpich
|
||||||
|
|
||||||
Lmod is automatically replacing "openmpi/1.10.2" with "mpich/3.2.1".
|
Lmod is automatically replacing "openmpi/3.1.3" with "mpich/3.2.1".
|
||||||
|
|
||||||
|
|
||||||
Due to MODULEPATH changes, the following have been reloaded:
|
Due to MODULEPATH changes, the following have been reloaded:
|
||||||
1) netlib-scalapack/2.0.2
|
1) netlib-scalapack/2.0.2
|
||||||
|
|
||||||
root@module-file-tutorial:/# module load mpich
|
$ module load netlib-lapack
|
||||||
|
|
||||||
Lmod is automatically replacing "openmpi/1.10.2" with "mpich/3.2.1".
|
Lmod is automatically replacing "openblas/0.3.3" with "netlib-lapack/3.8.0".
|
||||||
|
|
||||||
|
|
||||||
|
Inactive Modules:
|
||||||
|
1) py-numpy
|
||||||
|
|
||||||
Due to MODULEPATH changes, the following have been reloaded:
|
Due to MODULEPATH changes, the following have been reloaded:
|
||||||
1) netlib-scalapack/2.0.2
|
1) netlib-scalapack/2.0.2
|
||||||
|
|
||||||
|
@ -48,6 +48,16 @@ A few things before we get started:
|
|||||||
Creating the Package File
|
Creating the Package File
|
||||||
-------------------------
|
-------------------------
|
||||||
|
|
||||||
|
We will use a separate package repository for the tutorial. Package
|
||||||
|
repositories allow you to separate sets of packages that take
|
||||||
|
precedence over one another. We will use the tutorial repo that ships
|
||||||
|
with Spack to avoid breaking the builtin Spack packages.
|
||||||
|
|
||||||
|
.. code-block:: console
|
||||||
|
|
||||||
|
$ spack repo add $SPACK_ROOT/var/spack/repos/tutorial/
|
||||||
|
==> Added repo with namespace 'tutorial'.
|
||||||
|
|
||||||
Spack comes with a handy command to create a new package: ``spack create``.
|
Spack comes with a handy command to create a new package: ``spack create``.
|
||||||
|
|
||||||
This command is given the location of a package's source code, downloads
|
This command is given the location of a package's source code, downloads
|
||||||
@ -70,7 +80,7 @@ we run ``spack create`` on it:
|
|||||||
==> Checksummed 1 version of mpileaks
|
==> Checksummed 1 version of mpileaks
|
||||||
==> Using specified package template: 'generic'
|
==> Using specified package template: 'generic'
|
||||||
==> Created template for mpileaks package
|
==> Created template for mpileaks package
|
||||||
==> Created package file: $SPACK_ROOT/var/spack/repos/builtin/packages/mpileaks/package.py
|
==> Created package file: /home/spack1/spack/var/spack/repos/builtin/packages/mpileaks/package.py
|
||||||
|
|
||||||
And Spack should spawn a text editor with this file:
|
And Spack should spawn a text editor with this file:
|
||||||
|
|
||||||
@ -78,7 +88,7 @@ And Spack should spawn a text editor with this file:
|
|||||||
:language: python
|
:language: python
|
||||||
|
|
||||||
Spack has created this file in
|
Spack has created this file in
|
||||||
``$SPACK_ROOT/var/spack/repos/builtin/packages/mpileaks/package.py``. Take a
|
``/home/spack1/spack/var/spack/repos/builtin/packages/mpileaks/package.py``. Take a
|
||||||
moment to look over the file. There's a few placeholders that Spack has
|
moment to look over the file. There's a few placeholders that Spack has
|
||||||
created, which we'll fill in as part of this tutorial:
|
created, which we'll fill in as part of this tutorial:
|
||||||
|
|
||||||
@ -93,26 +103,27 @@ to build this package:
|
|||||||
.. code-block:: console
|
.. code-block:: console
|
||||||
|
|
||||||
$ spack install mpileaks
|
$ spack install mpileaks
|
||||||
==> Installing mpileaks
|
==> No binary for mpileaks found: installing from source
|
||||||
==> Using cached archive: /usr/workspace/wsa/legendre/spack/var/spack/cache/mpileaks/mpileaks-1.0.tar.gz
|
==> Fetching file:///mirror/mpileaks/mpileaks-1.0.tar.gz
|
||||||
==> Staging archive: /usr/workspace/wsa/legendre/spack/var/spack/stage/mpileaks-1.0-hufwhwpq5benv3sslie6ryflk5s6nm35/mpileaks-1.0.tar.gz
|
curl: (37) Couldn't open file /mirror/mpileaks/mpileaks-1.0.tar.gz
|
||||||
==> Created stage in /usr/workspace/wsa/legendre/spack/var/spack/stage/mpileaks-1.0-hufwhwpq5benv3sslie6ryflk5s6nm35
|
==> Fetching from file:///mirror/mpileaks/mpileaks-1.0.tar.gz failed.
|
||||||
==> Ran patch() for mpileaks
|
==> Fetching https://github.com/hpc/mpileaks/releases/download/v1.0/mpileaks-1.0.tar.gz
|
||||||
==> Building mpileaks [AutotoolsPackage]
|
######################################################################## 100.0%
|
||||||
==> Executing phase : 'autoreconf'
|
==> Staging archive: /home/ubuntu/packaging/spack/var/spack/stage/mpileaks-1.0-sv75n3u5ev6mljwcezisz3slooozbbxu/mpileaks-1.0.tar.gz
|
||||||
==> Executing phase : 'configure'
|
==> Created stage in /home/ubuntu/packaging/spack/var/spack/stage/mpileaks-1.0-sv75n3u5ev6mljwcezisz3slooozbbxu
|
||||||
==> Error: ProcessError: Command exited with status 1:
|
==> No patches needed for mpileaks
|
||||||
'./configure' '--prefix=/usr/workspace/wsa/legendre/spack/opt/spack/linux-rhel7-x86_64/gcc-4.9.3/mpileaks-1.0-hufwhwpq5benv3sslie6ryflk5s6nm35'
|
==> Building mpileaks [Package]
|
||||||
/usr/workspace/wsa/legendre/spack/lib/spack/spack/build_systems/autotools.py:150, in configure:
|
==> Executing phase: 'install'
|
||||||
145 def configure(self, spec, prefix):
|
==> Error: ProcessError: Command exited with status 2:
|
||||||
146 """Runs configure with the arguments specified in `configure_args`
|
'make' '-j16'
|
||||||
147 and an appropriately set prefix
|
|
||||||
148 """
|
1 error found in build log:
|
||||||
149 options = ['--prefix={0}'.format(prefix)] + self.configure_args()
|
1 ==> Executing phase: 'install'
|
||||||
>> 150 inspect.getmodule(self).configure(*options)
|
2 ==> 'make' '-j16'
|
||||||
|
>> 3 make: *** No targets specified and no makefile found. Stop.
|
||||||
|
|
||||||
See build log for details:
|
See build log for details:
|
||||||
/tmp/legendre/spack-stage/spack-stage-8HVzqu/mpileaks-1.0/spack-build.out
|
/home/ubuntu/packaging/spack/var/spack/stage/mpileaks-1.0-sv75n3u5ev6mljwcezisz3slooozbbxu/mpileaks-1.0/spack-build.out
|
||||||
|
|
||||||
This obviously didn't work; we need to fill in the package-specific
|
This obviously didn't work; we need to fill in the package-specific
|
||||||
information. Specifically, Spack didn't try to build any of mpileaks'
|
information. Specifically, Spack didn't try to build any of mpileaks'
|
||||||
@ -148,8 +159,19 @@ allow Spack to provide some documentation on this package to other users:
|
|||||||
.. code-block:: console
|
.. code-block:: console
|
||||||
|
|
||||||
$ spack info mpileaks
|
$ spack info mpileaks
|
||||||
AutotoolsPackage: mpileaks
|
Package: mpileaks
|
||||||
Homepage: https://github.com/hpc/mpileaks
|
|
||||||
|
Description:
|
||||||
|
Tool to detect and report MPI objects like MPI_Requests and
|
||||||
|
MPI_Datatypes.
|
||||||
|
|
||||||
|
Homepage: https://github.com/hpc/mpileaks
|
||||||
|
|
||||||
|
Tags:
|
||||||
|
None
|
||||||
|
|
||||||
|
Preferred version:
|
||||||
|
1.0 https://github.com/hpc/mpileaks/releases/download/v1.0/mpileaks-1.0.tar.gz
|
||||||
|
|
||||||
Safe versions:
|
Safe versions:
|
||||||
1.0 https://github.com/hpc/mpileaks/releases/download/v1.0/mpileaks-1.0.tar.gz
|
1.0 https://github.com/hpc/mpileaks/releases/download/v1.0/mpileaks-1.0.tar.gz
|
||||||
@ -158,7 +180,7 @@ allow Spack to provide some documentation on this package to other users:
|
|||||||
None
|
None
|
||||||
|
|
||||||
Installation Phases:
|
Installation Phases:
|
||||||
autoreconf configure build install
|
install
|
||||||
|
|
||||||
Build Dependencies:
|
Build Dependencies:
|
||||||
None
|
None
|
||||||
@ -172,10 +194,6 @@ allow Spack to provide some documentation on this package to other users:
|
|||||||
Virtual Packages:
|
Virtual Packages:
|
||||||
None
|
None
|
||||||
|
|
||||||
Description:
|
|
||||||
Tool to detect and report MPI objects like MPI_Requests and
|
|
||||||
MPI_Datatypes
|
|
||||||
|
|
||||||
As we fill in more information about this package the ``spack info`` command
|
As we fill in more information about this package the ``spack info`` command
|
||||||
will become more informative. Now let's start making this package build.
|
will become more informative. Now let's start making this package build.
|
||||||
|
|
||||||
@ -206,25 +224,39 @@ Now when we try to install this package a lot more happens:
|
|||||||
|
|
||||||
$ spack install mpileaks
|
$ spack install mpileaks
|
||||||
...
|
...
|
||||||
==> libdwarf is already installed in SPACK_ROOT/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/libdwarf-20160507-er4jrjynul6uba7wiu5tasuj35roxw6m
|
==> Successfully installed libdwarf from binary cache
|
||||||
==> dyninst is already installed in SPACK_ROOT/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/dyninst-9.3.2-t7mau34jv3e76mpspdzhf2p2a6k7qubg
|
[+] /home/ubuntu/packaging/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/libdwarf-20180129-p4jeflorwlnkoq2vpuyocwrbcht2ayak
|
||||||
==> callpath is already installed in SPACK_ROOT/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/callpath-1.0.4-ikbbkvfmsfmqzo624nvvrbooovf7egoc
|
==> Installing callpath
|
||||||
|
==> Searching for binary cache of callpath
|
||||||
|
==> Installing callpath from binary cache
|
||||||
|
==> Fetching file:///mirror/build_cache/linux-ubuntu16.04-x86_64/gcc-5.4.0/callpath-1.0.4/linux-ubuntu16.04-x86_64-gcc-5.4.0-callpath-1.0.4-empvyxdkc4j4pwg7gznwhbiumruey66x.spack
|
||||||
|
######################################################################## 100.0%
|
||||||
|
gpg: Signature made Sat 10 Nov 2018 05:30:21 AM UTC using RSA key ID 3B7C69B2
|
||||||
|
gpg: Good signature from "sc-tutorial (GPG created for Spack) <becker33@llnl.gov>" [unknown]
|
||||||
|
gpg: WARNING: This key is not certified with a trusted signature!
|
||||||
|
gpg: There is no indication that the signature belongs to the owner.
|
||||||
|
Primary key fingerprint: 95C7 1787 7AC0 0FFD AA8F D6E9 9CFA 4A45 3B7C 69B2
|
||||||
|
==> Successfully installed callpath from binary cache
|
||||||
|
[+] /home/ubuntu/packaging/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/callpath-1.0.4-empvyxdkc4j4pwg7gznwhbiumruey66x
|
||||||
==> Installing mpileaks
|
==> Installing mpileaks
|
||||||
==> Using cached archive: SPACK_ROOT/var/spack/cache/mpileaks/mpileaks-1.0.tar.gz
|
==> Searching for binary cache of mpileaks
|
||||||
==> Already staged mpileaks-1.0-lfgf53rns5mswq25rxckzgvmjc6ywam7 in SPACK_ROOT/var/spack/stage/mpileaks-1.0-lfgf53rns5mswq25rxckzgvmjc6ywam7
|
==> No binary for mpileaks found: installing from source
|
||||||
|
==> Using cached archive: /home/ubuntu/packaging/spack/var/spack/cache/mpileaks/mpileaks-1.0.tar.gz
|
||||||
|
==> Staging archive: /home/ubuntu/packaging/spack/var/spack/stage/mpileaks-1.0-csoikctsalli4cdkkdk377gprkc472rb/mpileaks-1.0.tar.gz
|
||||||
|
==> Created stage in /home/ubuntu/packaging/spack/var/spack/stage/mpileaks-1.0-csoikctsalli4cdkkdk377gprkc472rb
|
||||||
==> No patches needed for mpileaks
|
==> No patches needed for mpileaks
|
||||||
==> Building mpileaks [Package]
|
==> Building mpileaks [Package]
|
||||||
==> Executing phase: 'install'
|
==> Executing phase: 'install'
|
||||||
==> Error: ProcessError: Command exited with status 2:
|
==> Error: ProcessError: Command exited with status 2:
|
||||||
'make' '-j36'
|
'make' '-j16'
|
||||||
|
|
||||||
1 error found in build log:
|
1 error found in build log:
|
||||||
1 ==> Executing phase: 'install'
|
1 ==> Executing phase: 'install'
|
||||||
2 ==> 'make' '-j36'
|
2 ==> 'make' '-j16'
|
||||||
>> 3 make: *** No targets specified and no makefile found. Stop.
|
>> 3 make: *** No targets specified and no makefile found. Stop.
|
||||||
|
|
||||||
See build log for details:
|
See build log for details:
|
||||||
SPACK_ROOT/var/spack/stage/mpileaks-1.0-lfgf53rns5mswq25rxckzgvmjc6ywam7/mpileaks-1.0/spack-build.out
|
/home/ubuntu/packaging/spack/var/spack/stage/mpileaks-1.0-csoikctsalli4cdkkdk377gprkc472rb/mpileaks-1.0/spack-build.out
|
||||||
|
|
||||||
Note that this command may take a while to run and produce more output if
|
Note that this command may take a while to run and produce more output if
|
||||||
you don't have an MPI already installed or configured in Spack.
|
you don't have an MPI already installed or configured in Spack.
|
||||||
@ -251,9 +283,15 @@ If we re-run we still get errors:
|
|||||||
|
|
||||||
.. code-block:: console
|
.. code-block:: console
|
||||||
|
|
||||||
|
$ spack install mpileask
|
||||||
|
...
|
||||||
==> Installing mpileaks
|
==> Installing mpileaks
|
||||||
==> Using cached archive: SPACK_ROOT/var/spack/cache/mpileaks/mpileaks-1.0.tar.gz
|
==> Searching for binary cache of mpileaks
|
||||||
==> Already staged mpileaks-1.0-lfgf53rns5mswq25rxckzgvmjc6ywam7 in SPACK_ROOT/var/spack/stage/mpileaks-1.0-lfgf53rns5mswq25rxckzgvmjc6ywam7
|
==> Finding buildcaches in /mirror/build_cache
|
||||||
|
==> No binary for mpileaks found: installing from source
|
||||||
|
==> Using cached archive: /home/ubuntu/packaging/spack/var/spack/cache/mpileaks/mpileaks-1.0.tar.gz
|
||||||
|
==> Staging archive: /home/ubuntu/packaging/spack/var/spack/stage/mpileaks-1.0-csoikctsalli4cdkkdk377gprkc472rb/mpileaks-1.0.tar.gz
|
||||||
|
==> Created stage in /home/ubuntu/packaging/spack/var/spack/stage/mpileaks-1.0-csoikctsalli4cdkkdk377gprkc472rb
|
||||||
==> No patches needed for mpileaks
|
==> No patches needed for mpileaks
|
||||||
==> Building mpileaks [Package]
|
==> Building mpileaks [Package]
|
||||||
==> Executing phase: 'install'
|
==> Executing phase: 'install'
|
||||||
@ -261,17 +299,27 @@ If we re-run we still get errors:
|
|||||||
'./configure'
|
'./configure'
|
||||||
|
|
||||||
1 error found in build log:
|
1 error found in build log:
|
||||||
[ ... ]
|
25 checking for /home/ubuntu/packaging/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-
|
||||||
21 checking whether SPACK_ROOT/lib/spack/env/gcc/gcc and cc understand -c and -o together... yes
|
5.4.0/openmpi-3.1.3-3njc4q5pqdpptq6jvqjrezkffwokv2sx/bin/mpicc... /home/ubuntu/pa
|
||||||
22 checking whether we are using the GNU C++ compiler... yes
|
ckaging/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/openmpi-3.1.3-3njc4q5p
|
||||||
23 checking whether SPACK_ROOT/lib/spack/env/gcc/g++ accepts -g... yes
|
qdpptq6jvqjrezkffwokv2sx/bin/mpicc
|
||||||
24 checking dependency style of SPACK_ROOT/lib/spack/env/gcc/g++... gcc3
|
26 Checking whether /home/ubuntu/packaging/spack/opt/spack/linux-ubuntu16.04-x86_64/
|
||||||
25 checking for SPACK_ROOT/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/openmpi-3.0.0-yo5qkfvumpmgmvlbalqcadu46j5bd52f/bin/mpicc... SPACK_ROOT/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/openmpi-3.0.0-yo5qkfvumpmgmvlbalqcadu46j5bd52f/bin/mpicc
|
gcc-5.4.0/openmpi-3.1.3-3njc4q5pqdpptq6jvqjrezkffwokv2sx/bin/mpicc responds to '-
|
||||||
26 Checking whether SPACK_ROOT/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/openmpi-3.0.0-yo5qkfvumpmgmvlbalqcadu46j5bd52f/bin/mpicc responds to '-showme:compile'... yes
|
showme:compile'... no
|
||||||
>> 27 configure: error: unable to locate adept-utils installation
|
27 Checking whether /home/ubuntu/packaging/spack/opt/spack/linux-ubuntu16.04-x86_64/
|
||||||
|
gcc-5.4.0/openmpi-3.1.3-3njc4q5pqdpptq6jvqjrezkffwokv2sx/bin/mpicc responds to '-
|
||||||
|
showme'... no
|
||||||
|
28 Checking whether /home/ubuntu/packaging/spack/opt/spack/linux-ubuntu16.04-x86_64/
|
||||||
|
gcc-5.4.0/openmpi-3.1.3-3njc4q5pqdpptq6jvqjrezkffwokv2sx/bin/mpicc responds to '-
|
||||||
|
compile-info'... no
|
||||||
|
29 Checking whether /home/ubuntu/packaging/spack/opt/spack/linux-ubuntu16.04-x86_64/
|
||||||
|
gcc-5.4.0/openmpi-3.1.3-3njc4q5pqdpptq6jvqjrezkffwokv2sx/bin/mpicc responds to '-
|
||||||
|
show'... no
|
||||||
|
30 ./configure: line 4809: Echo: command not found
|
||||||
|
>> 31 configure: error: unable to locate adept-utils installation
|
||||||
|
|
||||||
See build log for details:
|
See build log for details:
|
||||||
SPACK_ROOT/var/spack/stage/mpileaks-1.0-lfgf53rns5mswq25rxckzgvmjc6ywam7/mpileaks-1.0/spack-build.out
|
/home/ubuntu/packaging/spack/var/spack/stage/mpileaks-1.0-csoikctsalli4cdkkdk377gprkc472rb/mpileaks-1.0/spack-build.out
|
||||||
|
|
||||||
Again, the problem may be obvious. But let's pretend we're not
|
Again, the problem may be obvious. But let's pretend we're not
|
||||||
all intelligent developers and use this opportunity spend some
|
all intelligent developers and use this opportunity spend some
|
||||||
@ -291,23 +339,23 @@ As per the error message, Spack has given us a ``spack-build.out`` debug log:
|
|||||||
checking for a thread-safe mkdir -p... /bin/mkdir -p
|
checking for a thread-safe mkdir -p... /bin/mkdir -p
|
||||||
checking for gawk... gawk
|
checking for gawk... gawk
|
||||||
checking whether make sets $(MAKE)... yes
|
checking whether make sets $(MAKE)... yes
|
||||||
checking for gcc... SPACK_ROOT/lib/spack/env/gcc/gcc
|
checking for gcc... /home/spack1/spack/lib/spack/env/gcc/gcc
|
||||||
checking for C compiler default output file name... a.out
|
checking for C compiler default output file name... a.out
|
||||||
checking whether the C compiler works... yes
|
checking whether the C compiler works... yes
|
||||||
checking whether we are cross compiling... no
|
checking whether we are cross compiling... no
|
||||||
checking for suffix of executables...
|
checking for suffix of executables...
|
||||||
checking for suffix of object files... o
|
checking for suffix of object files... o
|
||||||
checking whether we are using the GNU C compiler... yes
|
checking whether we are using the GNU C compiler... yes
|
||||||
checking whether SPACK_ROOT/lib/spack/env/gcc/gcc accepts -g... yes
|
checking whether /home/spack1/spack/lib/spack/env/gcc/gcc accepts -g... yes
|
||||||
checking for SPACK_ROOT/lib/spack/env/gcc/gcc option to accept ISO C89... none needed
|
checking for /home/spack1/spack/lib/spack/env/gcc/gcc option to accept ISO C89... none needed
|
||||||
checking for style of include used by make... GNU
|
checking for style of include used by make... GNU
|
||||||
checking dependency style of SPACK_ROOT/lib/spack/env/gcc/gcc... gcc3
|
checking dependency style of /home/spack1/spack/lib/spack/env/gcc/gcc... gcc3
|
||||||
checking whether SPACK_ROOT/lib/spack/env/gcc/gcc and cc understand -c and -o together... yes
|
checking whether /home/spack1/spack/lib/spack/env/gcc/gcc and cc understand -c and -o together... yes
|
||||||
checking whether we are using the GNU C++ compiler... yes
|
checking whether we are using the GNU C++ compiler... yes
|
||||||
checking whether SPACK_ROOT/lib/spack/env/gcc/g++ accepts -g... yes
|
checking whether /home/spack1/spack/lib/spack/env/gcc/g++ accepts -g... yes
|
||||||
checking dependency style of SPACK_ROOT/lib/spack/env/gcc/g++... gcc3
|
checking dependency style of /home/spack1/spack/lib/spack/env/gcc/g++... gcc3
|
||||||
checking for SPACK_ROOT/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/openmpi-3.0.0-yo5qkfvumpmgmvlbalqcadu46j5bd52f/bin/mpicc... SPACK_ROOT/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/openmpi-3.0.0-yo5qkfvumpmgmvlbalqcadu46j5bd52f/bin/mpicc
|
checking for /home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/openmpi-3.0.0-yo5qkfvumpmgmvlbalqcadu46j5bd52f/bin/mpicc... /home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/openmpi-3.0.0-yo5qkfvumpmgmvlbalqcadu46j5bd52f/bin/mpicc
|
||||||
Checking whether SPACK_ROOT/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/openmpi-3.0.0-yo5qkfvumpmgmvlbalqcadu46j5bd52f/bin/mpicc responds to '-showme:compile'... yes
|
Checking whether /home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/openmpi-3.0.0-yo5qkfvumpmgmvlbalqcadu46j5bd52f/bin/mpicc responds to '-showme:compile'... yes
|
||||||
configure: error: unable to locate adept-utils installation
|
configure: error: unable to locate adept-utils installation
|
||||||
|
|
||||||
This gives us the output from the build, and mpileaks isn't
|
This gives us the output from the build, and mpileaks isn't
|
||||||
@ -322,7 +370,7 @@ We can also enter the build area and try to manually run the build:
|
|||||||
|
|
||||||
.. code-block:: console
|
.. code-block:: console
|
||||||
|
|
||||||
$ spack env mpileaks bash
|
$ spack build-env mpileaks bash
|
||||||
$ spack cd mpileaks
|
$ spack cd mpileaks
|
||||||
|
|
||||||
The ``spack env`` command spawned a new shell that contains the same
|
The ``spack env`` command spawned a new shell that contains the same
|
||||||
@ -341,23 +389,23 @@ From here we can manually re-run the build:
|
|||||||
checking for a thread-safe mkdir -p... /bin/mkdir -p
|
checking for a thread-safe mkdir -p... /bin/mkdir -p
|
||||||
checking for gawk... gawk
|
checking for gawk... gawk
|
||||||
checking whether make sets $(MAKE)... yes
|
checking whether make sets $(MAKE)... yes
|
||||||
checking for gcc... SPACK_ROOT/lib/spack/env/gcc/gcc
|
checking for gcc... /home/spack1/spack/lib/spack/env/gcc/gcc
|
||||||
checking for C compiler default output file name... a.out
|
checking for C compiler default output file name... a.out
|
||||||
checking whether the C compiler works... yes
|
checking whether the C compiler works... yes
|
||||||
checking whether we are cross compiling... no
|
checking whether we are cross compiling... no
|
||||||
checking for suffix of executables...
|
checking for suffix of executables...
|
||||||
checking for suffix of object files... o
|
checking for suffix of object files... o
|
||||||
checking whether we are using the GNU C compiler... yes
|
checking whether we are using the GNU C compiler... yes
|
||||||
checking whether SPACK_ROOT/lib/spack/env/gcc/gcc accepts -g... yes
|
checking whether /home/spack1/spack/lib/spack/env/gcc/gcc accepts -g... yes
|
||||||
checking for SPACK_ROOT/lib/spack/env/gcc/gcc option to accept ISO C89... none needed
|
checking for /home/spack1/spack/lib/spack/env/gcc/gcc option to accept ISO C89... none needed
|
||||||
checking for style of include used by make... GNU
|
checking for style of include used by make... GNU
|
||||||
checking dependency style of SPACK_ROOT/lib/spack/env/gcc/gcc... gcc3
|
checking dependency style of /home/spack1/spack/lib/spack/env/gcc/gcc... gcc3
|
||||||
checking whether SPACK_ROOT/lib/spack/env/gcc/gcc and cc understand -c and -o together... yes
|
checking whether /home/spack1/spack/lib/spack/env/gcc/gcc and cc understand -c and -o together... yes
|
||||||
checking whether we are using the GNU C++ compiler... yes
|
checking whether we are using the GNU C++ compiler... yes
|
||||||
checking whether SPACK_ROOT/lib/spack/env/gcc/g++ accepts -g... yes
|
checking whether /home/spack1/spack/lib/spack/env/gcc/g++ accepts -g... yes
|
||||||
checking dependency style of SPACK_ROOT/lib/spack/env/gcc/g++... gcc3
|
checking dependency style of /home/spack1/spack/lib/spack/env/gcc/g++... gcc3
|
||||||
checking for SPACK_ROOT/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/openmpi-3.0.0-yo5qkfvumpmgmvlbalqcadu46j5bd52f/bin/mpicc... SPACK_ROOT/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/openmpi-3.0.0-yo5qkfvumpmgmvlbalqcadu46j5bd52f/bin/mpicc
|
checking for /home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/openmpi-3.0.0-yo5qkfvumpmgmvlbalqcadu46j5bd52f/bin/mpicc... /home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/openmpi-3.0.0-yo5qkfvumpmgmvlbalqcadu46j5bd52f/bin/mpicc
|
||||||
Checking whether SPACK_ROOT/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/openmpi-3.0.0-yo5qkfvumpmgmvlbalqcadu46j5bd52f/bin/mpicc responds to '-showme:compile'... yes
|
Checking whether /home/spack1/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/openmpi-3.0.0-yo5qkfvumpmgmvlbalqcadu46j5bd52f/bin/mpicc responds to '-showme:compile'... yes
|
||||||
configure: error: unable to locate adept-utils installation
|
configure: error: unable to locate adept-utils installation
|
||||||
|
|
||||||
We're seeing the same error, but now we're in a shell where we can run
|
We're seeing the same error, but now we're in a shell where we can run
|
||||||
@ -387,16 +435,18 @@ This is all we need for working mpileaks! If we install now we'll see:
|
|||||||
$ spack install mpileaks
|
$ spack install mpileaks
|
||||||
...
|
...
|
||||||
==> Installing mpileaks
|
==> Installing mpileaks
|
||||||
==> Using cached archive: SPACK_ROOT/var/spack/cache/mpileaks/mpileaks-1.0.tar.gz
|
==> Searching for binary cache of mpileaks
|
||||||
==> Staging archive: SPACK_ROOT/var/spack/stage/mpileaks-1.0-lfgf53rns5mswq25rxckzgvmjc6ywam7/mpileaks-1.0.tar.gz
|
==> Finding buildcaches in /mirror/build_cache
|
||||||
==> Created stage in SPACK_ROOT/var/spack/stage/mpileaks-1.0-lfgf53rns5mswq25rxckzgvmjc6ywam7
|
==> No binary for mpileaks found: installing from source
|
||||||
|
==> Using cached archive: /home/ubuntu/packaging/spack/var/spack/cache/mpileaks/mpileaks-1.0.tar.gz
|
||||||
|
==> Staging archive: /home/ubuntu/packaging/spack/var/spack/stage/mpileaks-1.0-csoikctsalli4cdkkdk377gprkc472rb/mpileaks-1.0.tar.gz
|
||||||
|
==> Created stage in /home/ubuntu/packaging/spack/var/spack/stage/mpileaks-1.0-csoikctsalli4cdkkdk377gprkc472rb
|
||||||
==> No patches needed for mpileaks
|
==> No patches needed for mpileaks
|
||||||
==> Building mpileaks [Package]
|
==> Building mpileaks [Package]
|
||||||
==> Executing phase: 'install'
|
==> Executing phase: 'install'
|
||||||
==> Successfully installed mpileaks
|
==> Successfully installed mpileaks
|
||||||
Fetch: 0.00s. Build: 9.01s. Total: 9.01s.
|
Fetch: 0.00s. Build: 9.41s. Total: 9.41s.
|
||||||
[+] SPACK_ROOT/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/mpileaks-1.0-lfgf53rns5mswq25rxckzgvmjc6ywam7
|
[+] /home/ubuntu/packaging/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/mpileaks-1.0-csoikctsalli4cdkkdk377gprkc472rb
|
||||||
|
|
||||||
|
|
||||||
There are some special circumstances in package that are worth highlighting.
|
There are some special circumstances in package that are worth highlighting.
|
||||||
Normally spack would have automatically detected that mpileaks was an
|
Normally spack would have automatically detected that mpileaks was an
|
||||||
@ -413,7 +463,7 @@ a full install routine we would have just written:
|
|||||||
Similarly, if this had been a CMake-based package we
|
Similarly, if this had been a CMake-based package we
|
||||||
would have been filling in a ``cmake_args`` function instead of
|
would have been filling in a ``cmake_args`` function instead of
|
||||||
``configure_args``. There are similar default package types for
|
``configure_args``. There are similar default package types for
|
||||||
many build environments.
|
many build environments that will be discussed later in the tutorial.
|
||||||
|
|
||||||
--------
|
--------
|
||||||
Variants
|
Variants
|
||||||
@ -440,13 +490,16 @@ configure line (output truncated for length):
|
|||||||
$ spack install --verbose mpileaks stackstart=4
|
$ spack install --verbose mpileaks stackstart=4
|
||||||
...
|
...
|
||||||
==> Installing mpileaks
|
==> Installing mpileaks
|
||||||
==> Using cached archive: SPACK_ROOT/var/spack/cache/mpileaks/mpileaks-1.0.tar.gz
|
==> Searching for binary cache of mpileaks
|
||||||
==> Staging archive: SPACK_ROOT/var/spack/stage/mpileaks-1.0-gxxi4fp57b4j6xalra5t65hyx5rj25t7/mpileaks-1.0.tar.gz
|
==> Finding buildcaches in /mirror/build_cache
|
||||||
==> Created stage in SPACK_ROOT/var/spack/stage/mpileaks-1.0-gxxi4fp57b4j6xalra5t65hyx5rj25t7
|
==> No binary for mpileaks found: installing from source
|
||||||
|
==> Using cached archive: /home/ubuntu/packaging/spack/var/spack/cache/mpileaks/mpileaks-1.0.tar.gz
|
||||||
|
==> Staging archive: /home/ubuntu/packaging/spack/var/spack/stage/mpileaks-1.0-meufjojkxve3l7rci2mbud3faidgplto/mpileaks-1.0.tar.gz
|
||||||
|
==> Created stage in /home/ubuntu/packaging/spack/var/spack/stage/mpileaks-1.0-meufjojkxve3l7rci2mbud3faidgplto
|
||||||
==> No patches needed for mpileaks
|
==> No patches needed for mpileaks
|
||||||
==> Building mpileaks [Package]
|
==> Building mpileaks [Package]
|
||||||
==> Executing phase: 'install'
|
==> Executing phase: 'install'
|
||||||
==> './configure' '--with-adept-utils=SPACK_ROOT/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/adept-utils-1.0.1-pm3gffhrnwsdtqthtvsfvs2tny4r65wb' '--with-callpath=SPACK_ROOT/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/callpath-1.0.4-ikbbkvfmsfmqzo624nvvrbooovf7egoc' '--prefix=SPACK_ROOT/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/mpileaks-1.0-gxxi4fp57b4j6xalra5t65hyx5rj25t7' '--with-stack-start-c=4' '--with-stack-start-fortran=4'
|
==> './configure' '--with-adept-utils=/home/ubuntu/packaging/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/adept-utils-1.0.1-7tippnvo5g76wpijk7x5kwfpr3iqiaen' '--with-callpath=/home/ubuntu/packaging/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/callpath-1.0.4-empvyxdkc4j4pwg7gznwhbiumruey66x' '--prefix=/home/ubuntu/packaging/spack/opt/spack/linux-ubuntu16.04-x86_64/gcc-5.4.0/mpileaks-1.0-meufjojkxve3l7rci2mbud3faidgplto' '--with-stack-start-c=4' '--with-stack-start-fortran=4'
|
||||||
|
|
||||||
---------------
|
---------------
|
||||||
The Spec Object
|
The Spec Object
|
||||||
|
Loading…
Reference in New Issue
Block a user