...
Table of Contents |
---|
Installation of SPACK
TODO: This section should contain all the information related to:
...
Load GCC 7.3.0:
Code Block module load gnu/7.3.0
Prepare directories:
Code Block $: mkdir -p <ROOT_DIR>/{cache,libs,modules,spack,stage}-{<compiler_names>} $: mkdir -p <ROOT_DIR>/cache-{<compiler_names>}/{cache,var,test} $: tree <ROOT_DIR/ <ROOT_DIR>/ ├── cache-compiler_x │ ├── cache │ ├── test │ └── var ├── cache-compiler_y │ ├── cache │ ├── test │ └── var ├── libs-compiler_x ├── libs-compiler_y ├── modules-compiler_x ├── modules-compiler_y ├── spack-compiler_x ├── spack-compiler_y ├── stage-compiler_x └── stage-compiler_y
Clone spack repository to
spack-gcc
:Code Block git clone https://github.com/spack/spack.git spack-compiler_name
Go into
spack-gcc
directory:Code Block cd spack-compiler_name
Checkout desired version of
spack
:Code Block git checkout v0.19.0
Set-up
spack
configuration:Go to directory where default configuration files are stored (assuming you're still inside spack-compiler_name repository):
Code Block cd etc/spack/defaults/
Edit
config.yaml
:Code Block vim config.yaml
You need to change the root of the install_tree, projections for all, build_stage dir, test_stage dir, source_cache dir and misc_cache dir.
Example:root
of theinstall_tree
:Code Block config: # This is the path to the root of the Spack install tree. # You can use $spack here to refer to the root of the spack instance. install_tree: root: <path_prefix>/<ROOT_DIR>/libs-compiler_name
projections
:Code Block projections: all: "${PACKAGE}/${VERSION}/${COMPILERNAME}/${COMPILERVER}/${HASH}"
build_stage
:Code Block build_stage: - <path_prefix>/<ROOT_DIR>/stage-compiler_name
test_stage
:Code Block test_stage: <path_prefix>/<ROOT_DIR>/cache-compiler_name/test
source_cache
:Code Block source_cache: <path_prefix>/<ROOT_DIR>/cache-compiler_name/var/cache
misc_cache
:Code Block misc_cache: <path_prefix>/<ROOT_DIR>/cache-compiler_name/cache
Edit
modules.yaml
:Code Block vim modules.yaml
Change the roots for the tcl modules:
Example:
Code Block # These are configurations for the module set named "default" default: # Where to install modules roots: tcl: <path_prefix>/<ROOT_DIR>/modules-compiler_name
Edit
linux/modules.yaml
:Code Block vim linux/modules.yaml
Here you have to fill the whole body just to set the module structure projections:
Code Block modules: default: arch_folder: false tcl: projections: all: '{name}/{version}/{compiler.name}/{compiler.version}/sha' prefix_inspections: lib: - LD_LIBRARY_PATH lib64: - LD_LIBRARY_PATH
Change the directory to the top of the
spack
repository:Code Block cd ../../../
Source
spack
:Code Block source share/spack/setup-env.sh
Check the
spack
version - should be0.19.0
:Code Block spack --version
...
Marconi + SPACK + GNU
This instruction covers all actions and commands from logging into the Marconi
server to installing imasenv
.
...