Skip to content

EasyBuild 5.2.0 can no longer load toolchains that have EXTERNAL modules as dependencies (issue on LUMI) #5106

@klust

Description

@klust

As discussed with Kenneth in a teams-call and a visit: Our Cray toolchain modules use a number of dependencies that are modules from the Cray Programming Environment hence external modules to LUMI. This causes Easybuild 5.2 to fail around the end of the prepare step when compiling packages that use the toolchains. The underlying issue is that while EBROOT variables are automatically generated for direct dependencies of a package, they are not generated for dependencies of dependencies, or in this case, the dependencies of the toolchain.

Reproducer: See https://github.com/klust/LUMI-EasyBuild-user/tree/main/easybuild/easyconfigs/k/Kenneth and the file https://github.com/klust/LUMI-EasyBuild-user/blob/main/easybuild/easyconfigs/k/Kenneth/easybuild_toolchain_issue.md in that directory that contains information on how to reproduce on LUMI and more analysis of the issue.

Note: A workaround for us that is not very elegant but workable, could be to extend our toolchain easyconfigs/modules to set the EBROOT variables for certain dependencies via a modluafooter. These toolchain modules are generated automatically anyway, so this would not be too error-prone. It might be a little tricky though to give those EBROOT variables sensible content.

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions