"Alan O'Cais" <[email protected]> writes: > Ever configuartion setting can be done in multiple ways, see > https://easybuilders.github.io/easybuild-tutorial/2022-isc22/configuration/ > for a good > overview. > > The easiest way to do arch support is to have use .../easybuild/<arch> as the > --prefix for each node type. The only stuff you should really worry about > have multiple copies of are the sources, so you can set --sourcepath to > .../easybuild/sources to avoid that duplication. For each node then you > configure the profile so that it detects the right path(s) for `module use > /path/to/<arch>/modules/all`
OK > On Fri, 2 Dec 2022 at 11:01, Loris Bennett <[email protected]> wrote: > > I was basing my approach on the first answer given here: > > > https://www.reddit.com/r/HPC/comments/y1gdch/how_to_manage_easybuild_on_hpc_with_multiple_cpu/ > > But I see now that the problem being solved there is slightly different > to mine, as two existing clusters were being merged, so the software for > the two different architectures had already been built. > > "Alan O'Cais" <[email protected]> writes: > > > Sorry, wrong name: --installpath-modules > > OK, thanks. Is there no corresponding environment variable? > > > If you are not using this explicitly in your config, then you are relying > on EASYBUILD_PREFIX to set the default, see > > > https://docs.easybuild.io/en/latest/Configuration.html#mandatory-configuration-settings > for details. By setting _just_ EASYBUILD_INSTALLPATH, you > are > > only changing where software gets installed, everything else is remaining > the same (and EasyBuild relies only on the module files to know if > something > > is installed or not). Something seems to be wrong with my set-up. I have defined my own variable [build@a001 ~]$ echo $EASYBUILD_INSTALLPATH_MODULES /trinity/shared/easybuild/arch/amd/zen3/modules which in fact EasyBuild seems to recognise: [build@a001 ~]$ eb --show-config # # Current EasyBuild configuration # (C: command line argument, D: default value, E: environment variable, F: configuration file) # buildpath (F) = /trinity/shared/easybuild/build containerpath (F) = /trinity/shared/easybuild/containers hooks (F) = /trinity/home/build/hooks/hpc_hooks.py installpath (E) = /trinity/shared/easybuild/arch/amd/zen3/software installpath-modules (E) = /trinity/shared/easybuild/arch/amd/zen3/modules packagepath (F) = /trinity/shared/easybuild/packages prefix (E) = /trinity/shared/easybuild repositorypath (F) = /trinity/shared/easybuild/ebfiles_repo robot-paths (D) = /trinity/shared/easybuild/software/EasyBuild/4.6.2/easybuild/easyconfigs sourcepath (F) = /trinity/shared/easybuild/sources However, EasyBuild still doesn't want to build the dependency: [build@a001 ~]$ eb Bison-3.8.2.eb --installpath-modules=$EASYBUILD_INSTALLPATH_MODULES --robot --dry-run --force == Temporary log file in case of crash /tmp/eb-aqpm3paq/easybuild-vqgytl2y.log == found valid index for /trinity/shared/easybuild/software/EasyBuild/4.6.2/easybuild/easyconfigs, so using it... == found valid index for /trinity/shared/easybuild/software/EasyBuild/4.6.2/easybuild/easyconfigs, so using it... Dry run: printing build status of easyconfigs and dependencies * [x] /trinity/shared/easybuild/software/EasyBuild/4.6.2/easybuild/easyconfigs/m/M4/M4-1.4.19.eb (module: M4/1.4.19) * [F] /trinity/shared/easybuild/software/EasyBuild/4.6.2/easybuild/easyconfigs/b/Bison/Bison-3.8.2.eb (module: Bison/3.8.2) == Temporary log file(s) /tmp/eb-aqpm3paq/easybuild-vqgytl2y.log* have been removed. == Temporary directory /tmp/eb-aqpm3paq has been removed. What am I doing wrong? Cheers, Loris [snip (116 lines)] -- Dr. Loris Bennett (Herr/Mr) ZEDAT, Freie Universität Berlin

