Environment setup
Users can control the available software by environment variables which are managed by environment modules (lmod). module avail
shows all modules available for a user, e.g. on festus:
[bt000000@festus01 ~]$ module avail
---------------------------- Compiler ----------------------------
aocc/4.2 go/1.23.0 nvidia/24.7 yasm/1.3.0
gnu/14.1 nvidia/24.5 nvidia/24.9 (D)
-------------------------- Interpreter ---------------------------
java/17.0.2 java/20.0.2 node.js/20.16.0
java/18.0.2 java/21.0.2 python/3.12.4
java/19.0.1 java/22.0.1 (D) tcl+tk/8.6.14
--------------------------- Buildtools ---------------------------
Qt/6.7.2 cmake/3.29.3 valgrind/3.23.0
autoconf/2.72 cmake/3.30.2 (D)
automake/1.16 ninja-build/1.12.1
------------------------- Apps und Tools -------------------------
FFmpeg/7.1 gperf/3.1
GraphicsMagick/1.3.44 graphviz/12.1.0
R/4.4.1 mplayer/1.5
Tex/TexLive24 proj/8.2.1
apptainer/1.3.3 proj/9.4.1 (D)
curl/8.9.1 sqlite/3.46.0
doxygen/1.12.0 subversion/1.14.3
fontconfig/2.15.0 swig/4.2.1
gdal/3.9.1 xapian/1.4.26
gnuplot/6.0.1
module load
and module unload
, respectively.
Now lets use this to switch between two gcc versions:
[bt000000@festus01 ~]$ module purge #unload all modules
[bt000000@festus01 ~]$ gcc --version
gcc (GCC) 11.4.1 20231218 (Red Hat 11.4.1-3)
Copyright (C) 2021 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
[bt000000@festus01 ~]$ module load gnu/14.1
[bt000000@festus01 ~]$ gcc --version
gcc (GCC) 14.1.0
Copyright (C) 2024 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
To list all loaded module simlpy user module list
:
[bt000000@festus01 ~]$ module list
Currently Loaded Modules:
1) gnu/14.1
Also you could try to filter for available modules:
[bt000000@festus01 ~]$ module avail cmake
--------------------------- Buildtools ---------------------------
cmake/3.29.3 cmake/3.30.2 (D)
Or search for a module that depends on another one:
[bt000000@festus01 ~]$ module spider openmpi
---------------------------------------------------------------
openmpi: openmpi/5.0.3
---------------------------------------------------------------
You will need to load all module(s) on any one of the lines
below before the "openmpi/5.0.3" module is available to load.
OneAPI_2024.2
OneAPI_2024.2.1
aocc/4.2
gnu/14.1
Some software depends on another an will only be visible if the needed modules are already loaded:
If you need software that is not already installed, please contact the HPC administrators.