Skip to content
boegel edited this page Aug 31, 2012 · 29 revisions

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.

-h, --help: List of available options

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

-C, --CONFIG: Configuration file

-r, --robot: Automatic dependency resolution (robot)

-a, --avail-easyconfig-params: List of available easyconfig parameters

--dumps-classes:

--search:

-e, --easyblock:

-p, --pretend:

-s, --stop:

-b, --only-blocks:

-k, --skip:

-t, --skip-tests:

-f, --force:

-l:

-d, --debug:

-v, --version:

Clone this wiki locally