Porting CESM 1.5 build case issues

Hi all,

I am currently in the processes of porting CESM 1.5b/2.0 over to the Hera computer, but am running into an issue when attempting to build a case. The error message appears to pertain to the "kissvec.c" file, which I have no prior experience correcting as I am much more familiar with CESM1.2.2. I found a previous post on the forum from last year talking about a similar issue, but there didn't seem to be a very satisfying resolution to the problem. I suspect that this is a compiler issue, but has anyone run into this error before and found a solution? I have included the csm_share.bldlog error message below as well as the machine specs being used.

Thanks in advance!
- Chris


csm_share.bldlog error message:

/scratch1/BMC/chimera/cmaloney/cesm-1.5.b2-full_checkout/cime/share/shr_RandNum/src/kissvec/kissvec.c(21): error: identifier "restrict" is undefined
void kiss_rng(uint32_t seed1[restrict], uint32_t seed2[restrict],
^

compilation aborted for /scratch1/BMC/chimera/cmaloney/cesm-1.5.b2-full_checkout/cime/share/shr_RandNum/src/kissvec/kissvec.c (code 2)
gmake: *** [kissvec.o] Error 2
rm shr_assert_mod.F90 shr_infnan_mod.F90
gmake complib -j 1 MODEL=csm_share COMPLIB=libcsm_share.a USER_CPPDEFS=" -DNUM_COMP_INST_ATM=1 -DNUM_COMP_INST_LND=1 -DNUM_COMP_INST_OCN=1 -DNUM_COMP_INST_ICE=1 -DNUM_COMP_INST_GLC=1 -DNUM_COMP_INST_WAV=1 -DNUM_COMP_INST_ROF=1 -DNUM_COMP_INST_ESP=1" -f /scratch1/BMC/chimera/cmaloney/cesm-1.5.b2-full_checkout/cime/scripts/hera_port_test2/Tools/Makefile returned non-zero exit status 2

Macros.make case file:
ifeq ($(COMPILER),intel)
MPIFC := mpiifort
PNETCDF_PATH := $(PNETCDF)
MPICC := mpiicc
SLIBS := -L$(NETCDF)/lib -L$(NETCDF)/include -lnetcdf -lnetcdff
NETCDF_PATH := $(NETCDF)
endif
ifeq ($(COMPILER),intel)
ifeq ($(MPILIB),impi)
SLIBS := $(SLIBS) -mkl=sequential
endif
endif

Machine info:
slurm scheduling system
intel 18.0.5.274
impi 2018.0.4
netcdf-hdf5 parallel 4.7.0
pnetcdf 1.10.0
 
Just thought I should update this as the problem has been resolved. There was an issue where a number of the flags within the 'config_compiler.xml' were not being implemented properly and thus they weren't being set (which is why the Macros.make file was so short).
 
Back
Top