-
Notifications
You must be signed in to change notification settings - Fork 36
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
Add libraries required to build UFS-Aerosols #252
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please see inline comments.
modulefiles/mpi/compilerName/compilerVersion/mpiName/mpiVersion/mapl/mapl.lua
Outdated
Show resolved
Hide resolved
Also, please add the newly added components to |
path if LMod is not being used. Reverse module loading order as requested (see PR NOAA-EMC#252).
to recommendations from PR NOAA-EMC#252.
Do not set CMAKE_MODULE_PATH in modulefiles.
Done in c75b290. |
The CI is failing because MAPL can't find ESMF when built without modules. I think you need to set |
Would it be better to set |
This is when building without modules. On the I think |
Done. Thank you! |
caused by incomplete CMake target for static NetCDF libraries.
Set ecbuild module path so CMakeModules FindNetCDF takes precedence
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Some more comments regarding the use of official repositories.
modulefiles/compiler/compilerName/compilerVersion/gftl-shared/gftl-shared.lua
Show resolved
Hide resolved
ESMA_cmake, gFTL-shared, yaFyaml, and MAPL.
I can't figure out why the build is failing on Ubuntu. HDF5 has an error linking to pthreads, but I'm not sure why. I'm pretty sure pthreads is a built-in library. It was working previously. |
Looks like everything is resolved. I am trying to figure out the CI failure, and then this can be merged. |
Changing the OS to Ubuntu 18.04 works |
Thanks @rmontuoro. I anticipate the builds will pass now. |
The build gets a lot further on Ubuntu now, and fails in MAPL.
Seems like a compiler error. It works on macOS which is using gfortran 9.4.0, but Ubuntu is using gfortran 9.3.0. I suspect that's the difference. |
I've opened an issue with NASA. |
I think I just need to update GCC. I found a bug on the GCC forums from this year that seems related. |
From which version to which? We need to be able to support GNU 9.x for the moment. |
It appears MAPL doesn't build with gfortran 9.3.0, but works with 9.4.0. I couldn't find a way to install 9.4.0 in the CI, so I'm trying 10.2.0. |
Means we need a patch so that it works with 9.1.0+, otherwise it's a showstopper or at least will cause a longer delay, because we would need to update the GNU compilers on Hera and Cheyenne and possibly for the CI tests. |
I'll investigate a little more and let you know |
@kgerheiser - see comment in MAPL issue #892 |
@climbfuji we have a fix that allows MAPL to build with gfortran 9.x |
Thanks, that's great news. |
A new MAPL release including the fix is being assembled and should be available soon. |
@kgerheiser - Could you please look into the openmpi build failure? We may need to specify proper linking flags for C++ bindings. |
I thought that might happen. I have a fix. |
I put in a PR to your branch. If you build OpenMPI yourself then the C++ library is linked in properly when using the Fortran wrapper. |
Build OpenMPI for correct C++ linking
All builds pass now. @aerorahul any more comments? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good.
Thanks @rmontuoro for addressing all the comments.
This PR adds a set of new libraries required to build the UFS aerosol component based on the NASA GOCART model.
Note that the following libraries are also added for convenience to create modules used to build MAPL. These libraries, however, are not required to build UFS-Aerosols.