11438023@zju_edu_cn
Member
Dear all,
I am trying to set up CESM2.1.3 on a new cluster.
Because I kept seeing the "NetCDF was not complied by the same version ..." error, I re-installed the NetCDF-c and Netcdf-fortran using the intel compiler.
However, I now see a new error that says: "/central/groups/carnegie_poc/leiduan_memex/CESM/my_cesm_sandbox/cime/src/externals/pio1/pio/pio_types.F90(13): error #7002: Error in opening the compiled module file. Check INCLUDE paths. [NETCDF]"
Here is part of the error message:
It seems the model cannot find the netcdf (is this correct?) However, I think I have link it where in the .bash* I have:
In config_machine.xml I have:
And in config_compiler.xml I have:
Any idea how to solve this would be much appreciated.
Best regards,
Lei
I am trying to set up CESM2.1.3 on a new cluster.
Because I kept seeing the "NetCDF was not complied by the same version ..." error, I re-installed the NetCDF-c and Netcdf-fortran using the intel compiler.
However, I now see a new error that says: "/central/groups/carnegie_poc/leiduan_memex/CESM/my_cesm_sandbox/cime/src/externals/pio1/pio/pio_types.F90(13): error #7002: Error in opening the compiled module file. Check INCLUDE paths. [NETCDF]"
Here is part of the error message:
Code:
[ 40%] Building Fortran object pio/CMakeFiles/pio.dir/pio_types.F90.o
cd /central/scratch/leiduan/test44/bld/intel/mpich/nodebug/nothreads/pio/pio1/pio && /central/software/Intel/2018.1/compilers_and_libraries_2018.1.163/linux/mpi/intel64/bin/mpiifort -D_NETCDF -D_NOPNETCDF -D_NOUSEMCT -D_USEBOX -I/central/groups/carnegie_poc/leiduan_memex/CESM/my_cesm_sandbox/cime/src/externals/pio1/pio -I/central/scratch/leiduan/test44/bld/intel/mpich/nodebug/nothreads/pio/pio1/pio -I/usr/include -qno-opt-dynamic-align -convert big_endian -assume byterecl -ftz -traceback -assume realloc_lhs -fp-model source -O2 -debug minimal -DTIMING -DLINUX -DNDEBUG -DHAVE_MPI -DPIO1 -DFORTRANUNDERSCORE -DCPRINTEL -DFORTRANUNDERSCORE -DCPRINTEL -DHAVE_SLASHPROC -D_NO_MPI_RSEND -I. -I/central/scratch/leiduan/test44/bld/intel/mpich/nodebug/nothreads/include -I/central/scratch/leiduan/test44/bld/intel/mpich/nodebug/nothreads/mct/noesmf/c1a1l1i1o1r1g1w1e1/include -I/home/leiduan/lei_netcdf/netcdf4.6-intelf//include -I/central/scratch/leiduan/test44/bld/intel/mpich/nodebug/nothreads/include -c /central/groups/carnegie_poc/leiduan_memex/CESM/my_cesm_sandbox/cime/src/externals/pio1/pio/pio_types.F90 -o CMakeFiles/pio.dir/pio_types.F90.o
make[2]: Leaving directory `/central/scratch/leiduan/test44/bld/intel/mpich/nodebug/nothreads/pio/pio1'
make[1]: Leaving directory `/central/scratch/leiduan/test44/bld/intel/mpich/nodebug/nothreads/pio/pio1'
/central/groups/carnegie_poc/leiduan_memex/CESM/my_cesm_sandbox/cime/src/externals/pio1/pio/pio_types.F90(13): error #7002: Error in opening the compiled module file. Check INCLUDE paths. [NETCDF]
use netcdf ! _EXTERNAL
---------^
/central/groups/carnegie_poc/leiduan_memex/CESM/my_cesm_sandbox/cime/src/externals/pio1/pio/pio_types.F90(383): error #6592: This symbol must be a defined parameter, an enumerator, or an argument of an inquiry function that evaluates to a compile-time constant. [NF90_GLOBAL]
integer, public, parameter :: PIO_global = nf90_global
----------------------------------------------^
/central/groups/carnegie_poc/leiduan_memex/CESM/my_cesm_sandbox/cime/src/externals/pio1/pio/pio_types.F90(384): error #6592: This symbol must be a defined parameter, an enumerator, or an argument of an inquiry function that evaluates to a compile-time constant. [NF90_UNLIMITED]
integer, public, parameter :: PIO_unlimited = nf90_unlimited[/ICODE]
It seems the model cannot find the netcdf (is this correct?) However, I think I have link it where in the .bash* I have:
Code:
export NETCDF_C=/home/leiduan/lei_netcdf/netcdf4.4-c
export NETCDF_C_LIB=$NETCDF_C/lib
export NETCDF_C_INC=$NETCDF_C/include
export PATH=$NETCDF_C/bin:$PATH
export LD_LIBRARY_PATH=$NETCDF_C/lib:$LD_LIBRARY_PATH
export NETCDF_F=/home/leiduan/lei_netcdf/netcdf4.6-intelf
export NETCDF_F_LIB=$NETCDF_F/lib
export NETCDF_F_INC=$NETCDF_F/include
export PATH=$NETCDF_F/bin:$PATH
export LD_LIBRARY_PATH=$NETCDF_F/lib:$LD_LIBRARY_PATH
In config_machine.xml I have:
Code:
<mpirun mpilib="mpich">
<executable>mpirun</executable>
<arguments>
<arg name="num_tasks"> -n {{ total_tasks }} </arg>
<arg name="lib">-genv LD_LIBRARY_PATH /home/leiduan/lei_netcdf/netcdf4.6-intelf/lib:$LD_LIBRARY_PATH</arg>
</arguments>
</mpirun>
<module_system type="none">
</module_system>
<environment_variables>
<env name="NETCDFROOT">/home/leiduan/lei_netcdf/netcdf4.6-intelf</env>
<env name="OMP_STACKSIZE">64M</env>
</environment_variables>
And in config_compiler.xml I have:
Code:
<NETCDF_PATH>/home/leiduan/lei_netcdf/netcdf4.6-intelf/</NETCDF_PATH>
<SLIBS>
<base> -L${NETCDF_PATH}/lib -I${NETCDF_PATH}/include -lnetcdf -lnetcdff -L$ENV{MKL_PATH} -lmkl_rt </base>
<append MPILIB="mpich"> -mkl=cluster </append>
</SLIBS>
Any idea how to solve this would be much appreciated.
Best regards,
Lei