NEMO compilation
Pierre-Yves Barriat edited this page 7 years ago

How to compile NEMO

Environment

Add the following in your .bashrc file

  • lorenz:
configure_nemo()
{
  module purge
  module load netCDF-Fortran/4.4.4-foss-2016b
}
  • ozone:
configure_nemo()
{
  module purge
  module load netCDF-Fortran/4.4.4-intel-2018 Boost
}
  • zenobe:
configure_nemo()
{
  module purge
  module load compiler/intel/composerxe/2015.5.223 intelmpi/5.0.3.049/64 hdf5/1.8.16-el6/intel_2015.5.223/intelmpi_5.0.3.049
  . /projects/acad/limhr/opt/modules
}

Compile the source code

XIOS

  • lorenz
cd $HOME/modeles/nemo/3.6/EXTERNAL/coral/nemo/XIOS
cp arch-gnu_ELIC.* ../../../xios-1.0/arch
cp -f bld.cfg ../../../xios-1.0
./make_xios --arch gnu_ELIC --netcdf_lib netcdf4_seq -j4
  • ozone
cd $HOME/modeles/nemo/3.6/EXTERNAL/coral/nemo/XIOS
cp arch-intel_ELIC.* ../../../xios-1.0/arch
./make_xios --arch intel_ELIC --netcdf_lib netcdf4_par -j4

An error will appear due to incompatibilities with XIOS boost library and recent version of GCC.

cd extern
mv boost boost_xios
ln -s $EBROOTBOOST boost
cd ..
./make_xios --arch intel_ELIC --netcdf_lib netcdf4_par --full -j4

NEMO

  • lorenz
cd $HOME/modeles/nemo/3.6/EXTERNAL/coral/nemo/ARCH
cp arch-gnu_ELIC.fcm ../../../../ARCH
cd ../../../../CONFIG
./makenemo -n ORCA1_LIM3_REF -d "OPA_SRC LIM_SRC_3" -m gnu_ELIC -j 0
cp $HOME/modeles/nemo/3.6/EXTERNAL/coral/nemo/KEYS/cpp.ref ORCA1_LIM3_REF/cpp_ORCA1_LIM3_REF.fcm
cp $HOME/modeles/nemo/3.6/EXTERNAL/coral/nemo/MY_SRC/* ORCA1_LIM3_REF/MY_SRC
./makenemo -n ORCA1_LIM3_REF -m gnu_ELIC -j4