0. Introduction

This tutorial assumes that the installation will be performed in the user's $HOME directory, preferably in a public subdirectory. The convention in this manual assumes the following directory structure:

Directory Structure
$HOME
├── public
│   ├── modules
│   ├── swimas
│   ├── switm
│   └── temp

where:

  • modules - is the location of the modulefiles needed to install the IMAS environment and its dependencies
  • swimas - is the location where the IMAS itself will be installed
  • switm - is the location where all needed dependencies will be installed
  • temp - is the directory used for temporary files like source codes and can be removed after successful installation

1.  Dependencies

Note

Remember to check with module avail <dependency-name> if a given package in a specific version is available in system installations, if so use module load <dependency-name>/<version> to use this installation. If not, follow the steps in the manual.


First, the necessary dependencies for the installation environment must be provided in specific order to be able to install all of them and IMAS itself. The following is a list with the order in which each dependency was installed:


  • 1.1. GCC v8.3.0

    The GNU Compiler Collection includes front ends for C, C++, Objective-C, Fortran, Ada, and Go, as well as libraries for these languages. There should be a system installation with the required version on the Marconi cluster. Just use the module to load it as below:

    module load gnu/8.3.0
  • 1.2. Perl v5

    The v5.16.3 version should be immediately available as part of the system.

  • 1.3. GNU Autoconf v2.69

    The v2.69 version should be immediately available as part of the system.

  • 1.4. GNU Automake v1.15

    To install automake version 1.15 follow these steps:

    Normal wayUsing Spack
    1. cd ~/public/temp
    2. wget https://ftp.gnu.org/gnu/automake/automake-1.15.tar.gz
    3. tar -xf automake-1.15.tar.gz
    4. cd automake-1.15
    5. In this tutorial directory path is "~/public/switm/automake/1.15"

      # ./configure --prefix=<directory_path>
      ./configure --prefix=~/public/switm/automake/1.15
    6. make
    7. make install
    spack install automake@1.15 %gcc@8.3.0






  • 1.5. Cmake v.3.20.6

    Normal wayUsing Spack
    1. cd ~/public/temp
    2. wget https://github.com/Kitware/CMake/releases/download/v3.20.6/cmake-3.20.6.tar.gz
    3. tar -xf cmake-3.20.6.tar.gz
    4. cd cmake-3.20.6.tar.gz
    5. In this tutorial directory path is "~/public/switm/cmake/3.20.6"

      # ./configure --prefix=<directory_path>
      ./configure --prefix=~/public/switm/cmake/3.20.6
    6. make
    7. make install
    spack install cmake@3.20.6 %gcc@8.3.0






  • 1.6. Python v3.7.10

    Normal wayUsing Spack
    1. cd ~/public/temp
    2. wget https://www.python.org/ftp/python/3.7.10/Python-3.7.10.tgz
    3. tar -xf Python-3.7.10.tgz
    4. cd Python-3.7.10.tgz
    5. In this tutorial directory path is "~/public/switm/python/3.7.10"

      # ./configure --prefix=<directory_path>
      ./configure --prefix=~/public/switm/python/3.7.10
    6. make
    7. make install
    spack install python@3.7.10






  • 1.7. Cython 0.29.23

    Normal wayUsing Spack
    1. cd ~/public/temp
    2. wget https://files.pythonhosted.org/packages/source/c/cython/Cython-0.29.23.tar.gz
    3. tar -xf Cython-0.29.23.tar.gz
    4. cd Cython-0.29.23.tar.gz
    5. In this tutorial directory path is "~/public/switm/cython/0.29.23"

      python setup.py install --prefix=~/public/switm/cython/0.29.23
    spack install py-cython@0.29.23






  • 1.8. Java Development Kit v1.8.0_111

There should be a system installation with the required version on the Marconi cluster. Just use the module to load it as below:

module load jdk/1.8.0_111
  • 1.9. Intel Parallel Studio XE 2020

There should be a system installation with the required version on the Marconi cluster. Just use the module to load it as below:

module load intel/pe-xe-2020--binary
  • 1.10. Git v2.17.0

There should be a system installation with the required version on the Marconi cluster. Just use the module to load it as below:

module load git/2.17
  • 1.11. Saxon v9

Normal way
  1. cd ~/public/temp
  2. wget http://www.saxonica.com/download/SaxonPE9-6-0-10J.zip
  3. unzip -d source/ download.zip
  • 1.12. Blitz++ v1.0.2

Normal wayUsing Spack
  1. cd ~/public/temp
  2. wget https://github.com/blitzpp/blitz/archive/refs/tags/1.0.2.zip
  3. unzip 1.0.2.zip
  4. cd blitz-1.0.2
  5. mkdir build && cd build
  6. In this tutorial directory path is "~/public/switm/blitz/1.0.2"

    cmake -DCMAKE_INSTALL_PREFIX=~/public/switm/blitz/1.0.2 ..
  7. make lib
  8. make install
spack install blitz@1.0.1 %gcc@8.3.0






  • 1.13. MdsPlus v7.96.17

Normal wayUsing Spack
  1. cd ~/public/temp
  2. wget https://github.com/MDSplus/mdsplus/archive/refs/tags/stable_release-7-96-17.zip
  3. unzip stable_release-7-96-17.zip
  4. cd mdsplus-stable_release-7-96-17/
  5. ./bootstrap
  6. In this tutorial directory path is "~/public/switm/mdsplus/7.96.17"

    ./configure --prefix=~/public/switm/mdsplus/7.96.17
  7. make
  8. make install
spack install mdsplus@7.96.17 %gcc@8.3.0

  • No labels