Skip to content

EasyBuild Reference

EasyBuild can install software on the HPCC relying on a huge library of on user-contributed recipes called EasyConfigs. This page collects some of the most useful commands and topics for using EasyBuild at ICER. See our tutorial to learn how to use EasyBuild.

Loading EasyBuild

EasyBuild is a module available on the HPCC. Make sure to remove all other modules before using it.

1
2
module purge
module load EasyBuild

Configuration and options

Use the --show-config option to see all of the configuration options and their values.

1
eb --show-config

Any option can be changed by passing it as a command line argument when using ebS. Key examples are given below.

Software installation directory: --installpath-software

Set to the directory where the final software is installed (default: $HOME/.local/easybuild/software).

Module directory: --installpath-module

Set to the directory where the software's module files are stored (default: $HOME/.local/easybuild/modules).

Temporary build directory: --buildpath

Set to the directory the software is downloaded and compiled (default: $HOME/.local/easybuild/build).

Warning

We highly recommend setting --buildpath=/tmp/$USER/EASYBUILD so that you don't download the temporary files to your home directory!

Number of cores allowed in parallel installation: --parallel

Set to the number of cores you wish to use (default: all cores on node)

Warning

When installing software on a development node, please use the --parallel option to restrict your usage and ensure that the node stays usable for other users. When in doubt, set --parallel=8.

EasyConfigs

EasyConfigs are the recipes used to install software. There is a large collection (focusing on research software) already available on the HPCC contributed by many users and software developers across the world.

Searching with --search or -M

Use the --search or -S option to eb to find an EasyConfig available on the HPCC.

Example:

1
eb -S zfp

Viewing with --show-ec

Use the --show-ec option to view an EasyConfig based on its name (not its full path).

Example:

1
eb --show-ec zfp-1.0.1-GCCcore-12.3.0.eb

Installing software

Run eb with any options you wish to set followed by the name of the EasyConfig you wish to install.

Example:

1
eb --parallel=8 --buildpath=/tmp/$USER/EASYBUILD --installpath-software=$SCRATCH/software zfp-1.0.1-GCCcore-12.3.0.eb

Accessing installed software with the module system

Add the location where your module files are installed (i.e., the value of --installpath-modules in your EasyBuild configuration to your $MODULEPATH with module use so modules can be found by further module commands.

Note that EasyBuild adds an extra all directory inside your installpath-modules that you should use with module use:

Example:

input
1
2
module use $HOME/.local/easybuild/modules/all
module spider zfp
output
1
2
3
4
5
6
----------------------------------------------------------------------------
  zfp: zfp/1.0.1-GCCcore-12.3.0
----------------------------------------------------------------------------
...
    This module can be loaded directly: module load zfp/1.0.1-GCCcore-12.3.0
...
input
1
module load zfp/1.0.1-GCCcore-12.3.0