forked from easybuilders/easybuild-framework
-
Notifications
You must be signed in to change notification settings - Fork 0
EasyBuild
Kenneth Hoste edited this page Apr 3, 2012
·
9 revisions
EasyBuild is a software build and installation framework in Python that allows you to install software in a structured, repeatable and robust way.
It was developed by the High-Performance Computing team at Ghent University and was motivated by the need for a system that would allow to:
- install multiple versions of a software package side-by-side
- support multiple compilers and libraries for building a software package
- keep package configuration simple
- divert from standard configure / make / make install with custom procedures (which is often necessary for scientific packages)
- use environment modules for dependency resolution and making the software available to users in a transparent way
- keep record of the installation logs
- keep track of installation configuration in version control
Some key properties of EasyBuild:
- installation configuration is done using a (very concise) .eb specification file
- custom behaviour is described in easyblocks, which are Python classes that can be plugged into the EasyBuild framework
- module files are generated to make the software easily available to users
- dependencies for installation are resolved using environment modules and can be automatically installed using the robot feature
- after installation the specification files can be sent to a repository for archiving
For more information on EasyBuild, see the documentation wiki on github.