EasyBuild on MeluXina
The MeluXina system environment provides the EasyBuild package for managing, building and installing software packages.
EasyBuild module description
EasyBuild is a software build and installation framework written in Python that allows you to install software in a structured, repeatable and robust way.
You can use EasyBuild to configure your software environment and install your own packages locally.
EasyBuild usage
Interactive
Reserve an interactive session:
salloc -A COMPUTE_ACCOUNT -t 01:00:00 -q dev --res cpudev -p cpu -N 1
The example above will allocate one CPU node in interactive mode (dev QoS with cpudev reservation). Load the EasyBuild module as in below script.
module load EasyBuild
export EASYBUILD_PREFIX=$HOME/install
export EASYBUILD_BUILDPATH=/dev/shm
export EASYBUILD_SOURCES=/apps/sources
eb -r QuantumESPRESSO-6.7-foss-2021a.eb
Batch
EasyBuild can also be used in a batch job using Slurm. The script below install QuantumESPRESSO package on one CPU node allocated for 1h.
#!/bin/bash -l
#SBATCH -N 1
#SBATCH --ntasks=1
#SBATCH --cpus-per-task=1
#SBATCH -p cpu
#SBATCH -q short
#Load EasyBuild module
module load EasyBuild
#Check EasyBuild version
eb --version
#Set install configuration
export EASYBUILD_PREFIX=$HOME/install
export EASYBUILD_BUILDPATH=/dev/shm
export EASYBUILD_SOURCES=/apps/sources
#Search for QuantumESPRESSO easyconfig files
eb -S '^QuantumESPRESSO.*foss-2021a'
#Inspecting easyconfigs
eb --show-ec QuantumESPRESSO-6.7-foss-2021a.eb
#Dry run (without installing)
eb -D QuantumESPRESSO-6.7-foss-2021a.eb
#Check the missing dependencies (if there is any)
eb -M QuantumESPRESSO-6.7-foss-2021a.eb
#Inspecting install procedures
eb -x QuantumESPRESSO-6.7-foss-2021a.eb
#Install QuantumESPRESSO with EasyBuild
eb -r QuantumESPRESSO-6.7-foss-2021a.eb