[[5th easybuild hackathon]] - notes day 1 - notes day 3
- currently missing in EasyBuild:
- prepend to
$MODULEPATH
in generated compiler/mpi modules should be automagic - provide full parsed easyconfig file to module naming scheme module, so e.g. module class is accessible (see related framework issue)
- need to provide
%(modulesroot)s
, allow specifying absolute paths viamodextrapaths
(prepend_paths
) - generated modules use full module names, while they should only use the module names relative to the
$MODULEPATH
in a hierarchical setup... - see also easybuilders/easybuild-framework#862
- plan is to create easyconfig files and store them in own repository, then issue pull request shortly before release
- Cube silently enforces -
-disable-gui
if the provided Qt dependency is not OK (configure doesn't complain) - missing in EasyBuild:
- SystemModule easy block?
- support in
--robot
for specifying URLs to remote easyconfig repos
Christian: write easyblock for installing Score-P dev tools in the same prefix (libtool, autoconf, …) after patching them
- issues with setting up 'production' and 'development' environments for writing own easyblocks/easyconfigs
- missing in EasyBuild
- documentation or cmdline option on generating module for system-provided tools or existing modules
-
figure out problem with imkl include files not being found => add
-I$EBROOTIMKL/mkl/include/intel64/lp64
to$FCFLAGS
-
fix BLAS linking issues by defining
$LIBS
=> makes sure that libraries are added at the end, which is a strict requirement when statically linking (cfr. http://software.intel.com/en-us/articles/static-linking-with-mkl-ipp-or-tbb-may-give-unresolved-references) -
building of examples is broken due to use of -ldl ?!?
- properly set umask
- set sticky bit on top install directory
- lots of documentation available at JSC (Anke) on building perf tools (like HPC Toolkit)
- hierarchical modules
- multi-user usage
- get software installed via JSC policies (no write access to shared FS, now using an old packaging system)
- different groups look after different tools (compiler, math libs, IO libs, …), have to be provided to each other