====== What is EasyBuild? ======
EasyBuild is a software build and installation framework that allows you to manage (scientific) software on High Performance Computing (HPC) systems in an efficient way. It is motivated by the need for a tool that combines the following features:
* a flexible framework for building/installing (scientific) software
* fully automates software builds
* divert from the standard configure / make / make install with custom procedures
* allows for easily reproducing previous builds
* keep the software build recipes/specifications simple and human-readable
* supports co-existence of versions/builds via dedicated installation prefix and module files
* enables sharing with the HPC community (win-win situation)
* automagic dependency resolution
* retain logs for traceability of the build processes
You can see more information in the official project website: https://easybuild.readthedocs.io/
====== Requirement ======
* Python: 2.6 or 2.7, or Python 3.x (>= 3.5).
- Only EasyBuild v4.0 (or newer) is compatible with Python 3, earlier EasyBuild releases require Python 2.
- only EasyBuild versions prior to v4.0 require vsc-base. See [[https://easybuild.readthedocs.io/en/latest/Installation.html#required-python-packages-eb3|required Python packages for older EasyBuild versions]]
* modules tool: Tcl(/C) environment modules or Lmod, see [[https://easybuild.readthedocs.io/en/latest/Installation.html#required-modules-tool|Required modules tool]] for more details. See too [[hpc:lmod|Install Lmod]]
====== Install ======
Easybuild cannot be installed with the root user, for this reason it is necessary to create a user account that will take care of using it
To create the user account do the following:
adduser easybuild
Now it is necessary to execute the Easybuild installation process with the user created previously.
su - easybuild
EASYBUILD_PREFIX=$HOME/.local/easybuild
# download script
curl -O https://raw.githubusercontent.com/easybuilders/easybuild-framework/develop/easybuild/scripts/bootstrap_eb.py
# bootstrap EasyBuild
python bootstrap_eb.py $EASYBUILD_PREFIX
# update $MODULEPATH, and load the EasyBuild module
module use $EASYBUILD_PREFIX/modules/all
module load EasyBuild