====== EasyBuild ====== EasyBuild is a framework used to automatically build software and make it available as modules. Many of our modules are provided via EasyBuild, but it can also be used to create new modules for personal (or group) use. * https://easybuild.readthedocs.org/en/latest/ ===== Quick start ===== Activate the EasyBuild module * ''module load EasyBuild'' Search for available "easyconfigs" (basically recipes to build a software package) * ''eb -S matplotlib'' Build matplotlib and all dependencies, with Python 2.7 and using the "goolf-1.4.10" compiler toolchain: * ''eb matplotlib-1.2.1-goolf-1.4.10-Python-2.7.3.eb -r'' By default, Easybuild will install new software and modules in your home directory under: * software install path: ''$HOME/.local/easybuild/software'' * modules install path: ''$HOME/.local/easybuild/modules/all'' after which you can make the new modules available using ''module use $HOME/.local/easybuild/modules/all'' To make an alternative configuration for EasyBuild, start by getting it to write out the standard config: * ''eb –confighelp > $HOME/.config/easybuild/config.cfg'' Then edit any new values, for example: * ''installpath=/data/mygroup/easybuild'' (to create a shared group area) * ''buildpath=/dev/shm'' will help greatly with build speeds, on a machine with sufficient memory.