NOAA-GFDL/MOM6

Latest FMS causes trouble

Closed this issue · 7 comments

With gfortran, I get:

MOM_io_infra.o:MOM_io_infra.F90:function __mom_io_infra_MOD_write_time_if_later: error: undefined reference to '__fms_io_utils_mod_MOD___vtab_REAL_8_'
MOM_io_infra.o:MOM_io_infra.F90:function __mom_io_infra_MOD_write_metadata_axis: error: undefined reference to '__fms_io_utils_mod_MOD___vtab_INTEGER_4_'
MOM_io_infra.o:MOM_io_infra.F90:function __mom_io_infra_MOD_mom_write_axis: error: undefined reference to '__fms_io_utils_mod_MOD___vtab_REAL_8_'
MOM_io_infra.o:MOM_io_infra.F90:function __mom_io_infra_MOD_mom_write_axis: error: undefined reference to '__fms_io_utils_mod_MOD___vtab_REAL_8_'
MOM_io_infra.o:MOM_io_infra.F90:function __mom_io_infra_MOD_write_field_0d: error: undefined reference to '__fms_io_utils_mod_MOD___vtab_REAL_8_'
MOM_io_infra.o:MOM_io_infra.F90:function __mom_io_infra_MOD_read_field_1d_int: error: undefined reference to '__fms_io_utils_mod_MOD___vtab_INTEGER_4_'
MOM_io_infra.o:MOM_io_infra.F90:function __mom_io_infra_MOD_read_field_1d_int: error: undefined reference to '__fms_io_utils_mod_MOD___vtab_INTEGER_4_'
MOM_io_infra.o:MOM_io_infra.F90:function __mom_io_infra_MOD_read_field_0d_int: error: undefined reference to '__fms_io_utils_mod_MOD___vtab_INTEGER_4_'

Which infra? FMS2?

Yes, FMS2 with 2023.01

FMS has also invented a new file extension (.fh) so makedep needs to be modified.

I'm working through the other build issues right now. (There is a possibility that this has been addressed in #343)

I was able to build dev/gfdl and run the .testing suite (after an edit to makedep), but I have no doubt that you are hitting some neglected parts. Are these errors at compile time or run time?

Compile (link) time for ocean_only. Trying on our test node for the new software stack gives a compile-time error:

//import/c1/AKWATERS/kate/ESMG/ESMG-configs/src/MOM6/config_src/infra/FMS2/MOM_domain_infra.F90:27:5:

   27 | use fms_affinity_mod, only : fms_affinity_init, fms_affinity_set, fms_affinity_get
      |     1
Fatal Error: Mismatch in components of derived type ‘fmsnetcdffile_t’ from ‘netcdf_io_mod’ at (1): expecting ‘allow_int8’, but got ‘is_netcdf4’

I think that looks like a symbol table mixup? Might need a full clean.

You're right - they both needed a full clean. Sorry.