Closed kbergaoui closed 2 years ago
NUOPC_UpdateTimestamp was replaced with NUOPC_SetTimestamp in newer revisions of ESMF. I put a placeholder in the code to prepare for this but I haven't gotten around to making a permanent fix to the code. You'll have to manually comment out NUOPC_UpdateTimestamp and uncomment NUOPC_SetTimestamp everywhere in the code. https://github.com/NESII/lishydro/blob/develop/src/driver/mediator.F90#L2706
Thank you for your reply. I've commented the 3 lines related to NUOPC_UpdateTimestamp and uncommented NUOPC_SetTimestamp but I got the same error message:
mediator.F90(2709): error #6285: There is no matching specific subroutine for this generic subroutine call. [NUOPC_SETTIMESTAMP] call NUOPC_SetTimestamp(is%wrap%LND%extToState, mediatorClock, rc=rc) -----------^ mediator.F90(2952): error #6285: There is no matching specific subroutine for this generic subroutine call. [NUOPC_SETTIMESTAMP] call NUOPC_SetTimestamp(is%wrap%HYD%extToState, mediatorClock, rc=rc) -----------^ compilation aborted for mediator.F90 (code 1)
I am using esmf.8.1.1 which esmf library do you recommend to get around this issue (In case I can't solve the issue through the mediator.F90 program) ? Best
Dear Dan,
Thank you so much for your valuable support. In fact I solved the issue by installing ESMF_7_1_0. I think that the package is not yet ready for a newer version of ESMF. All the Best,
@kbergaoui FYI - The code was updated to use CMake to link all components and build the mediator/driver. During the updates the mediator was updated to support later versions of ESMF. https://github.com/NESII/lishydro/commit/d16bcd330285fa73341f05947bf596e38c72208c
FYI - The latest version of the WRF-Hydro coupling layer "Cap" only supports ESMF v 8.0.1 and later.
Dear Dan,
I am compiling lishydro with intel fortran compiler oneAPI 2021. I compiled successfully LIS and WRF-Hydro but I failed on the compilation of the driver (mediator.F90) with the following error: mediator.F90(2706): error #6285: There is no matching specific subroutine for this generic subroutine call. [NUOPC_UPDATETIMESTAMP] call NUOPC_UpdateTimestamp(is%wrap%LND(i)%extToState, mediatorClock, rc=rc) -----------^ mediator.F90(2949): error #6285: There is no matching specific subroutine for this generic subroutine call. [NUOPC_UPDATETIMESTAMP] call NUOPC_UpdateTimestamp(is%wrap%HYD(i)%extToState, mediatorClock, rc=rc)
I've attached the outputs of the compilation of LIS, WRF-Hydro and the driver. The missing routine in this error is compiled successfully in the library esmf and I include all the esmf modules mod in my compilation but still the compilation failed with no matching specific subroutine ...
After compilation of LIS and WRF-Hydro the produced files are the following: LIS-INSTALL liblis_nuopc.a lis_esmf_extensions.mod lis.mk lis_nuopc_datacopy.mod lis_nuopc_gluecode.mod lis_nuopc.mod VERSION WRFHydro-INSTALL libwrfhydro_nuopc.a VERSION wrfhydro_esmf_extensions.mod wrfhydro.mk wrfhydro_nuopc_gluecode.mod wrfhydro_nuopc.mod
Any insight is really welcome! Best regards compile_driver.txt compile_lis.txt compile_wrfhydro.txt