-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Building GCC 12.2 with spack #7
Comments
After running:
on Young. I have:
and there is a module file:
The build took several hours to run on Young's login node. |
gives:
and g++ and gfortran both show similar. Now to try building something - our Pi example ... |
The module file doesn't do everything you might expect. eg doesn't set LD_LIBRARY_PATH so when I do make in pi/c+f90_mix_openmp_dir it finds the wrong gfortran library! |
What exactly is finding the wrong gfortran library? Also, does |
Also, if you're using Spack v0.19 you could try setting in the spack environment
so that Related: #2 (comment) Edit: on a second thought, this will likely not help here, since you aren't building the pi program through spack. But honestly I'd expect spack's gcc to set rpath automatically for its runtime libraries. |
We will need to sort out what the modules are doing, since we are going to be expecting users to be interacting with modules rather than spack commands most of the time. (Although with respect to LD_LIBRARY_PATH this affects There's a thing in the Slack saying that they recently stopped setting LD_LIBRARY_PATH by default (because everything is rpathed and it breaks system binaries when they find spack dependencies instead of their own ones). There is info at https://spack.readthedocs.io/en/latest/module_file_support.html#customize-environment-modifications - which says it is better set per-package rather than globally. And https://spack.readthedocs.io/en/latest/module_file_support.html#overide-api-calls-in-package-py So we probably want a list of packages where this is necessary? |
On Myriad I'm trying a build of GCC 12 with something like: def setup_run_environment(self, env): defined in GCC's package.py. need to find out what lib-path should be. |
lib-path needs to be: "lib", "lib64" I think. Also should probably set LIBRARY_PATH like this as well. |
The GCC 12 build on Myriad was going really well until I blew my HOME quota! |
Fixed and restarted. |
I've finally got LD_LIBRARY_PATH set in the GCC module by doing:
and adding:
to def setup_run_environment(self, env):. |
I will test if this module now works in the new year. |
Now doing the following:
in my Spack test directory following by building our Fortran PI example from https://github.com/UCL-RITS/pi_examples.git
Adding my change to my Young Spack setup. |
Running:
adds GCC 12 to Spacks available compilers. |
GCC 12.x is required for the latest CP2K version.
The text was updated successfully, but these errors were encountered: