-
Notifications
You must be signed in to change notification settings - Fork 0
Using EasyBuild
Using EasyBuild in the simplest form is really easy: just run the eb script and supply a .eb easyconfig file to it, and EasyBuild will try and build/install the software as specified in the .eb file.
Note: we will use $EBHOME to indicate the location where EasyBuild was installed.
$EBHOME/eb example.eb
EasyBuild offers various command line options to access other features, see below.
To obtain the list of available options, just run the eb script with the -h or --help option, which will provide output as shown below. Running the script without specifying a .eb file will also generate this output.
The usage description at the top specifies build.py because eb is just a wrapper around easybuild/build.py, which updates the PYTHONPATH to ensure that EasyBuild can work as expected.
Usage: build.py [options] easyconfig [..]
Builds software package based on easyconfig (or parse a directory). Provide
one or more easyconfigs or directories, use -h or --help more information.
Options:
-h, --help show this help message and exit
Basic options:
Basic runtime options for EasyBuild.
-b BLOCKS, --only-blocks=BLOCKS
Only build blocks blk[,blk2]
-d, --debug log debug messages
-f, --force force to rebuild software even if it's already
installed (i.e. can be found as module)
--job will submit the build as a job
-k, --skip skip existing software (useful for installing
additional packages)
-l log to stdout
-r PATH, --robot=PATH
path to search for easyconfigs for missing
dependencies
--regtest enable regression test mode
--regtest-online enable online regression test mode
-s STOP, --stop=STOP
stop the installation after certain step (valid: cfg,
source, patch, prepare, configure, make, install,
test, postproc, cleanup, packages)
--strict=STRICT set strictness level (possible levels: ignore, warn,
error)
Software build options:
Specify software build options (overrides settings in easyconfig).
--software-name=NAME
build software package with given name
--software-version=VERSION
build software with this particular version
--toolkit=NAME,VERSION
build with specified toolkit (name and version)
--toolkit-name=NAME
build with specified toolkit name
--toolkit-version=VERSION
build with specified toolkit version
--amend=VAR=VALUE[,VALUE2]
specify additional build parameters (can be used
multiple times); for example: versionprefix=foo or
patches=one.patch,two.patch
Override options:
Override default EasyBuild behavior.
-C CONFIG, --config=CONFIG
path to EasyBuild config file [default:
$EASYBUILDCONFIG or easybuild/easybuild_config.py]
-e CLASS, --easyblock=CLASS
loads the class from module to process the spec file
or dump the options for [default: Application class]
-p, --pretend does the build/installation in a test directory
located in $HOME/easybuildinstall [default:
$EASYBUILDINSTALLDIR or installPath in EasyBuild
config file]
-t, --skip-tests skip testing
Informative options:
Obtain information about EasyBuild.
-a, --avail-easyconfig-params
show available easyconfig parameters
--dump-classes show list of available classes
--search=SEARCH search for module-files in the robot-directory
-v, --version show version
--dep-graph=depgraph.<ext>
create dependency graph