Skip to content

Building GOCART Standalone with Spack

Matt Thompson edited this page Jul 30, 2024 · 2 revisions

This page will detail my attempts to build GOCART Standalone using Spack.

For this testing so far, I'm using spack mainline as of 2024-Jul-29 plus https://github.com/spack/spack/pull/45194 as on my Mac, I have gcc 13.3 and need the GFE Updates in that PR.

UFS_GOCART=ON

To build with -DUFS_GOCART=ON you need the feature/mathomp4/test-no-standalone-dev branch from https://github.com/GEOS-ESM/GOCART/pull/273.

I was then able to build with:

module load apple-clang openmpi mapl mepo
cmake -B build-UFS-ON -S . --install-prefix=$(pwd)/install-UFS-ON -DUFS_GOCART=ON
cmake --build build-UFS-ON --parallel 6 --target install

UFS_GOCART=OFF

For this, the modules are the same (well, mapl isn't needed since we'll build MAPL internally for this test). Note that with -DUFS_GOCART=OFF the only target that should be built is GOCART2G_GridComp. The full install target would try to build GOCART_GridComp which assumes that the Chem_Base and Chem_Shared targets are present, but those are from GEOSchem_GridComp.

But with that it can be built with:

module load apple-clang openmpi mepo
cmake -B build-UFS-OFF -S . --install-prefix=$(pwd)/install-UFS-OFF -DUFS_GOCART=OFF
cmake --build build-UFS-OFF --parallel 6 --target GOCART2G_GridComp