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
$ ebS --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/software).

Module directory: --installpath-module

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

Temporary build directory: --buildpath

Set to the directory the software is downloaded and compiled (default: /tmp/$USER/EASYBUILD).

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 ebS to find an EasyConfig available on the HPCC.

Example:

1
$ ebS -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
$ ebS --show-ec zfp-1.0.0-GCCcore-10.3.0.eb

Installing software

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

Example:

1
$ ebS --parallel=8 --installpath-software=$SCRATCH/software zfp-1.0.0-GCCcore-10.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.

Example:

1
2
3
4
5
6
7
8
9
$ module use $HOME/modules
$ module spider zfp
----------------------------------------------------------------------------
  zfp: zfp/1.0.0-GCCcore-10.3.0
----------------------------------------------------------------------------
...
    This module can be loaded directly: module load zfp/1.0.0-GCCcore-10.3.0
...
$ module load zfp/1.0.0-GCCcore-10.3.0

The ebS alias and default options

When you load the EasyBuild module, you have access to the eb command which is the traditional way to interface with EasyBuild. The ICER staff has also supplied the ebS alias to take the place of eb. It sets some reasonable defaults for you including

  • setting your EasyBuild installpath to $HOME
    • software is installed in $HOME/software
    • modules are installed in $HOME/modules
  • automatically purging modules before installing (to ensure new software works as desired)
  • automatically installing dependencies using the --robot option
  • rebuilding the desired software if it's already installed

If you read the EasyBuild documentation or any other sources, you are free to use ebS in place of eb.