Hello,
I am trying to use cesm2.2.2 on our supercomputer Mahti. This is `_compilers.xml` entry:
```
<!-- ******************* MAHTI ********************* -->
<compiler MACH="mahti" COMPILER="gnu">
<CFLAGS>
<base> -std=gnu99 </base>
<append compile_threaded="TRUE"> -fopenmp </append>
</CFLAGS>
<FFLAGS>
<append compile_threaded="TRUE"> -fopenmp </append>
<append> -w -fallow-argument-mismatch -fallow-invalid-boz -lopenblas</append>
</FFLAGS>
<LDFLAGS>
<append compile_threaded="TRUE"> -fopenmp </append>
</LDFLAGS>
<NETCDF_C_PATH>$(NETCDF_C_INSTALL_ROOT)</NETCDF_C_PATH>
<NETCDF_FORTRAN_PATH>$(NETCDF_FORTRAN_INSTALL_ROOT)</NETCDF_FORTRAN_PATH>
<!-- <NETCDF_PATH>$(NETCDF_FORTRAN_INSTALL_ROOT)</NETCDF_PATH> --> <!--- Before running do export NETCDF_PATH=... -->
<PNETCDF_PATH>$(PARALLEL_NETCDF_INSTALL_ROOT)</PNETCDF_PATH>
<SLIBS>
<append>-L$(OPENBLAS_INSTALL_ROOT) -lopenblas -L$(NETCDF_PATH)/lib -lnetcdff -lnetcdf -Wl,-rpath=$(NETCDF_PATH)/lib -Wl,-rpath=$(PARALLEL_NETCDF_INSTALL_ROOT)/lib</append>
</SLIBS>
<ESMF_LIBDIR>/fmi/datasets/CESM-INPUT/esmf710r/lib/libO/Linux.intel.64.openmpi.default</ESMF_LIBDIR>
</compiler>
````
And this is the `_machines.xml` entry:
```
<!-- MAHTI -->
<machine MACH="mahti">
<DESC>Atos BullSequana XH2000, 128 pes/node (two 64-core processors) and 256 GB of memory/node, batch system is SLURM</DESC>
<OS>LINUX</OS>
<COMPILERS>gnu</COMPILERS>
<MPILIBS>openmpi</MPILIBS>
<PROJECT>project_2008521</PROJECT>
<CHARGE_ACCOUNT>project_2008521</CHARGE_ACCOUNT>
<CIME_OUTPUT_ROOT>/scratch/project_2008521/$USER/CIME_OUTPUT/</CIME_OUTPUT_ROOT>
<DIN_LOC_ROOT>/scratch/project_2008521/CESM-INPUT/inputdata</DIN_LOC_ROOT>
<DIN_LOC_ROOT_CLMFORC>/scratch/project_2008521/CESM-INPUT/inputdata/atm/datm7</DIN_LOC_ROOT_CLMFORC>
<DOUT_S_ROOT>/scratch/project_2008521/archive/$CASE</DOUT_S_ROOT>
<BASELINE_ROOT>/projappl/project_2008521/CESM-INPUT/cime/cesm_baselines</BASELINE_ROOT>
<CCSM_CPRNC>/projappl/project_2008521/cesm213/cime/tools/cprnc/cprnc</CCSM_CPRNC>
<GMAKE_J>64</GMAKE_J>
<BATCH_SYSTEM>slurm</BATCH_SYSTEM>
<SUPPORTED_BY>cristian at csc, monika at fmi</SUPPORTED_BY>
<MAX_TASKS_PER_NODE>128</MAX_TASKS_PER_NODE>
<MAX_MPITASKS_PER_NODE>64</MAX_MPITASKS_PER_NODE>
<PROJECT_REQUIRED>TRUE</PROJECT_REQUIRED>
<mpirun mpilib="default">
<executable>srun</executable>
</mpirun>
<module_system type="module" allow_error="true">
<init_path lang="perl">/usr/share/lmod/lmod/init/perl</init_path>
<init_path lang="python">/usr/share/lmod/lmod/init/env_modules_python.py</init_path>
<init_path lang="csh">/usr/share/lmod/lmod/init/csh</init_path>
<init_path lang="sh">/usr/share/lmod/lmod/init/sh</init_path>
<cmd_path lang="perl">/usr/share/lmod/lmod/libexec/lmod perl</cmd_path>
<cmd_path lang="python">/usr/share/lmod/lmod/libexec/lmod python</cmd_path>
<cmd_path lang="csh">module</cmd_path>
<cmd_path lang="sh">module</cmd_path>
<modules>
<command name="purge"/>
<command name="load">cmake</command>
<!-- <command name="load">perl/5.34.1</command> -->
<command name="load">python-data/3.8-22.10</command>
<command name="load">gcc/11.2.0</command>
<command name="load">openmpi/4.1.2</command>
<command name="load">openblas</command>
<command name="load">parallel-netcdf/1.12.2</command>
<command name="load">netcdf-c/4.8.1</command>
<command name="load">netcdf-fortran/4.5.3</command>
</modules>
</module_system>
```
The `./gdescribe_version` gives this:
```
$ ./describe_version
------------------------------------------------------------------------
git describe:
release-cesm2.2.2-0-g779b0a3
```
Have you made any changes to files in the source tree?
- Describe any changes (code, xml files, etc.)
I added entries to the `.xml` files corresponding to our machine Mahti. Those entries worked without issues with the **cesm2.1.1**.
Describe every step you took leading up to the problem:
- Describe every step you took, starting with the create_newcase command and including any changes you made to xml files, user_nl files, etc. Please try to reproduce the problem first using your own instructions.
When I create a case the build step failed:
```
/scratch/project_2008521/cristian/CIME_OUTPUT/test_1/bld/gnu/openmpi/nodebug/nothreads/mct/lib/libpioc.a(pio_nc4.c.o): in function `PIOc_inq_filter_avail':
pio_nc4.c:(.text+0x3212): undefined reference to `nc_inq_filter_avail'
```
If this is a port to a new machine: Please attach any files you added or changed for the machine port (e.g., config_compilers.xml, config_machines.xml, and config_batch.xml) and tell us the compiler version you are using on this machine.
Please attach any log files showing error messages or other useful information.
- If the error occurs during the build, please attach the appropriate build log file showing the compilation error message.
- If the error occurs during the run, please attach all log files from the run (cpl.log, cesm.log and all component log files).
Describe your problem or question:
I am trying to use cesm2.2.2 on our supercomputer Mahti. This is `_compilers.xml` entry:
```
<!-- ******************* MAHTI ********************* -->
<compiler MACH="mahti" COMPILER="gnu">
<CFLAGS>
<base> -std=gnu99 </base>
<append compile_threaded="TRUE"> -fopenmp </append>
</CFLAGS>
<FFLAGS>
<append compile_threaded="TRUE"> -fopenmp </append>
<append> -w -fallow-argument-mismatch -fallow-invalid-boz -lopenblas</append>
</FFLAGS>
<LDFLAGS>
<append compile_threaded="TRUE"> -fopenmp </append>
</LDFLAGS>
<NETCDF_C_PATH>$(NETCDF_C_INSTALL_ROOT)</NETCDF_C_PATH>
<NETCDF_FORTRAN_PATH>$(NETCDF_FORTRAN_INSTALL_ROOT)</NETCDF_FORTRAN_PATH>
<!-- <NETCDF_PATH>$(NETCDF_FORTRAN_INSTALL_ROOT)</NETCDF_PATH> --> <!--- Before running do export NETCDF_PATH=... -->
<PNETCDF_PATH>$(PARALLEL_NETCDF_INSTALL_ROOT)</PNETCDF_PATH>
<SLIBS>
<append>-L$(OPENBLAS_INSTALL_ROOT) -lopenblas -L$(NETCDF_PATH)/lib -lnetcdff -lnetcdf -Wl,-rpath=$(NETCDF_PATH)/lib -Wl,-rpath=$(PARALLEL_NETCDF_INSTALL_ROOT)/lib</append>
</SLIBS>
<ESMF_LIBDIR>/fmi/datasets/CESM-INPUT/esmf710r/lib/libO/Linux.intel.64.openmpi.default</ESMF_LIBDIR>
</compiler>
````
And this is the `_machines.xml` entry:
```
<!-- MAHTI -->
<machine MACH="mahti">
<DESC>Atos BullSequana XH2000, 128 pes/node (two 64-core processors) and 256 GB of memory/node, batch system is SLURM</DESC>
<OS>LINUX</OS>
<COMPILERS>gnu</COMPILERS>
<MPILIBS>openmpi</MPILIBS>
<PROJECT>project_2008521</PROJECT>
<CHARGE_ACCOUNT>project_2008521</CHARGE_ACCOUNT>
<CIME_OUTPUT_ROOT>/scratch/project_2008521/$USER/CIME_OUTPUT/</CIME_OUTPUT_ROOT>
<DIN_LOC_ROOT>/scratch/project_2008521/CESM-INPUT/inputdata</DIN_LOC_ROOT>
<DIN_LOC_ROOT_CLMFORC>/scratch/project_2008521/CESM-INPUT/inputdata/atm/datm7</DIN_LOC_ROOT_CLMFORC>
<DOUT_S_ROOT>/scratch/project_2008521/archive/$CASE</DOUT_S_ROOT>
<BASELINE_ROOT>/projappl/project_2008521/CESM-INPUT/cime/cesm_baselines</BASELINE_ROOT>
<CCSM_CPRNC>/projappl/project_2008521/cesm213/cime/tools/cprnc/cprnc</CCSM_CPRNC>
<GMAKE_J>64</GMAKE_J>
<BATCH_SYSTEM>slurm</BATCH_SYSTEM>
<SUPPORTED_BY>cristian at csc, monika at fmi</SUPPORTED_BY>
<MAX_TASKS_PER_NODE>128</MAX_TASKS_PER_NODE>
<MAX_MPITASKS_PER_NODE>64</MAX_MPITASKS_PER_NODE>
<PROJECT_REQUIRED>TRUE</PROJECT_REQUIRED>
<mpirun mpilib="default">
<executable>srun</executable>
</mpirun>
<module_system type="module" allow_error="true">
<init_path lang="perl">/usr/share/lmod/lmod/init/perl</init_path>
<init_path lang="python">/usr/share/lmod/lmod/init/env_modules_python.py</init_path>
<init_path lang="csh">/usr/share/lmod/lmod/init/csh</init_path>
<init_path lang="sh">/usr/share/lmod/lmod/init/sh</init_path>
<cmd_path lang="perl">/usr/share/lmod/lmod/libexec/lmod perl</cmd_path>
<cmd_path lang="python">/usr/share/lmod/lmod/libexec/lmod python</cmd_path>
<cmd_path lang="csh">module</cmd_path>
<cmd_path lang="sh">module</cmd_path>
<modules>
<command name="purge"/>
<command name="load">cmake</command>
<!-- <command name="load">perl/5.34.1</command> -->
<command name="load">python-data/3.8-22.10</command>
<command name="load">gcc/11.2.0</command>
<command name="load">openmpi/4.1.2</command>
<command name="load">openblas</command>
<command name="load">parallel-netcdf/1.12.2</command>
<command name="load">netcdf-c/4.8.1</command>
<command name="load">netcdf-fortran/4.5.3</command>
</modules>
</module_system>
```
The `./gdescribe_version` gives this:
```
$ ./describe_version
------------------------------------------------------------------------
git describe:
release-cesm2.2.2-0-g779b0a3
```
Have you made any changes to files in the source tree?
- Describe any changes (code, xml files, etc.)
I added entries to the `.xml` files corresponding to our machine Mahti. Those entries worked without issues with the **cesm2.1.1**.
Describe every step you took leading up to the problem:
- Describe every step you took, starting with the create_newcase command and including any changes you made to xml files, user_nl files, etc. Please try to reproduce the problem first using your own instructions.
When I create a case the build step failed:
```
/scratch/project_2008521/cristian/CIME_OUTPUT/test_1/bld/gnu/openmpi/nodebug/nothreads/mct/lib/libpioc.a(pio_nc4.c.o): in function `PIOc_inq_filter_avail':
pio_nc4.c:(.text+0x3212): undefined reference to `nc_inq_filter_avail'
```
If this is a port to a new machine: Please attach any files you added or changed for the machine port (e.g., config_compilers.xml, config_machines.xml, and config_batch.xml) and tell us the compiler version you are using on this machine.
Please attach any log files showing error messages or other useful information.
- If the error occurs during the build, please attach the appropriate build log file showing the compilation error message.
- If the error occurs during the run, please attach all log files from the run (cpl.log, cesm.log and all component log files).
Describe your problem or question: