MCSclimate / MCT

Model Coupling Tookit
Other
43 stars 18 forks source link

Nagfor KIND value error when compiling ftest.F90 in mpi-serial #5

Closed rljacob closed 9 years ago

rljacob commented 9 years ago

Using NAG 5.3.1 on MCS machines ./configure FC=nagfor CC=gcc --enable-mpiserial

Error: ftest.F90, line 128: KIND value (8) does not specify a valid representation method

quantheory commented 9 years ago

NAG doesn't use byte counts as kind numbers, so you have to get kinds from selected_real_kind and similar methods (which is probably for the best anyway).

Alternatively, you can use the "--kind=byte" flag, which is what CESM is currently doing. But that can cause other headaches relating to binary compatibility and some build systems, so we're thinking of dropping that.

quantheory commented 9 years ago

Oh, or use kind numbers from the "intrinsic" iso_fortran_env or iso_c_binding modules, which are probably more appropriate here:

https://gcc.gnu.org/onlinedocs/gfortran/ISO_005fFORTRAN_005fENV.html https://gcc.gnu.org/onlinedocs/gfortran/ISO_005fC_005fBINDING.html#ISO_005fC_005fBINDING

iso_c_binding is Fortran 2003, aside from the TS 29113 stuff, but it's very stable/portable, so I'd go with that.

rljacob commented 9 years ago

Does CSEG need mpi-serial working with NAG? I'd like to defer this to 2.9.1.

quantheory commented 9 years ago

We do need mpi-serial working with NAG, but this specific issue will not affect us right now, because we still use "--kind=byte". So it's fine to delay the fix for a little while.

rljacob commented 9 years ago

Actually got this. Then had additional problem which required adding -mismatch to the compile.