The EasyBuild framework is available on the system by loading the module EasyBuild-custom. This module defines the location of the EasyBuild configuration files, recipes and installation directories. Once you have loaded the EasyBuild modulefile, you can check the EasyBuild version loaded and the default configuration executing the EasyBuild command eb  with the options --version  or --show-config respectively, as shown in the example below (we report only the most useful configuration options in the output):

EasyBuild configuration
$ module load EasyBuild-custom/cscs

$ eb --version
This is EasyBuild 4.5.1 (framework: 4.5.1, easyblocks: 4.5.1) on host uan03.

$ eb --show-config
# Current EasyBuild configuration
# (C: command line argument, D: default value, E: environment variable, F: configuration file)
#
buildpath                 (E) = /run/user/21827/easybuild/build
installpath               (E) = /users/lucamar/easybuild/eiger
optarch                   (E) = x86-rome
prefix                    (E) = /users/lucamar/easybuild/eiger
robot-paths               (E) = /apps/common/UES/jenkins/production/easybuild/easyconfigs/, /apps/common/UES/easybuild/software/EasyBuild/4.5.1/easybuild/easyconfigs
sourcepath                (E) = /apps/common/easybuild/sources
tmpdir                    (E) = /run/user/21827/easybuild/tmp

As reported in the output of the command eb --show-config, the configuration items labeled with (E) are defined by an environment variable EASYBUILD_<item>, where item  is in uppercase letters. Therefore the buildpath  is defined by the variable EASYBUILD_BUILDPATH , whereas the prefix  (that defines the installpath of the modules created by EasyBuild) is defined by EASYBUILD_PREFIX. You can change these configuration items editing the corresponding environment variable.  Please use the EasyBuild search option --search to access the EasyBuild script (also known as easyconfig file) used to build a software. For instance, we can search the most recent script available to build the software GROMACS with the toolchain cpeGNU:  

EasyBuild search
$ eb --search GROMACS | grep cpeGNU | tail -1
 * /apps/common/UES/jenkins/production/easybuild/easyconfigs/g/GROMACS/GROMACS-2021.5-cpeGNU-21.12.eb

In the example above, we have filtered the results of the search with the linux command grep to match the selected toolchain. The outcome is the full path of the script used to build the modulefile: this is a python script that can be invoked using the EasyBuild command eb  followed by the recursive flag -r  to build the selected software together with its dependencies. For more options, please have a look at the short help message returned by eb -h or the full help message with the command eb -H.

The usage of EasyBuild on the system follows the same guidelines of the production systems at CSCS, that are available on the dedicated page of the User Portal.
  • No labels