-
Notifications
You must be signed in to change notification settings - Fork 15
Building GOCART Standalone on Orion
This is a complete guide to for building GOCART on Mississippi State HPC2's Orion Computer. This guide assumes one can log into Orion and that they are running the Bash shell.
In order to build GOCART, one currently needs to build the Baselibs for GEOS, and then load them into their environment. To do this first navigate to the directory you wish to clone and build the Baselibs in. Then run the following commands:
module load intel/2019.5 impi/2019.6 cmake/3.17.3 python/3.7.5 git/2.21.0
git clone -b v6.0.13 --recurse-submodules https://github.com/GEOS-ESM/ESMA-Baselibs.git
cd ESMA-Baselibs
export BASELIBS=<path for Baselibs install>
make -j4 install ESMF_COMM=intelmpi ESMF_COMPILER=intel BUILD=ESSENTIALS prefix=$BASELIBS | tee ~/Baselibs_Build.log
Finally, check that your install was successful by running:
make verify
Your result should match the following:
MKFILE_DIRNAME = ESMA-Baselibs
SUBDIRS = antlr gsl jpeg zlib szlib curl hdf4 hdf5 netcdf netcdf-fortran netcdf-cxx4 udunits2 nco cdo nccmp esmf gFTL gFTL-shared fArgParse pFUnit yaFyaml pFlogger FLAP hdfeos hdfeos5 SDPToolkit
BUILD_DAP = --disable-dap
GFORTRAN_VERSION_GTE_10 = 0
ALLOW_ARGUMENT_MISMATCH =
-------+---------+---------+--------------
Config | Install | Check | Package
-------+---------+---------+--------------
-- | -- | -- | antlr
-- | -- | -- | gsl
ok | ok | -- | jpeg
ok | ok | -- | zlib
ok | ok | -- | szlib
-- | -- | -- | curl
ok | ok | -- | hdf4
ok | ok | -- | hdf5
ok | ok | -- | netcdf
ok | ok | -- | netcdf-fortran
ok | ok | -- | netcdf-cxx4
-- | -- | -- | udunits2
-- | -- | -- | nco
-- | -- | -- | cdo
-- | -- | -- | nccmp
ok | ok | -- | esmf
ok | ok | -- | gFTL
ok | ok | -- | gFTL-shared
ok | ok | -- | fArgParse
ok | ok | -- | pFUnit
ok | ok | -- | yaFyaml
ok | ok | -- | pFlogger
ok | ok | -- | FLAP
-- | -- | -- | hdfeos
-- | -- | -- | hdfeos5
-- | -- | -- | SDPToolkit
-------+---------+---------+--------------
mepo
is a tool that we use to manage multiple repository projects. Note that mepo
requires python 3 and a newer version of git
. On Orion the simplest way to get python 3 is to make sure that the python/3.7.5
module is loaded (as we did above), while the simplest way to get a new enough version of git
is to load the git/2.21.0
module.
To begin navigate to the folder you wish to install mepo
into. Then clone mepo:
git clone https://github.com/GEOS-ESM/mepo.git
Then add mepo
to your $PATH
with:
export PATH=<path to mepo>/mepo:$PATH
We recommend adding this command to your .bashrc
.
First navigate to the directory you wish to clone and build GOCART in. Then run the following commands:
git clone --branch Aerosol_Test_App https://github.com/GEOS-ESM/GOCART.git
cd GOCART
mepo clone
mkdir build
cd build
cmake .. -DBASEDIR=$BASELIBS -DCMAKE_Fortran_COMPILER=ifort -DCMAKE_INSTALL_PREFIX=../install -DCMAKE_BUILD_TYPE=Release
make -j4 install
Note that if you wish to build with debugging flags, set -DCMAKE_BUILD_TYPE=Debug
.