Scheduled Downtime
On Tuesday 24 October 2023 @ 5pm MT the forums will be in read only mode in preparation for the downtime. On Wednesday 25 October 2023 @ 5am MT, this website will be down for maintenance and expected to return online later in the morning.
Normal Operations
The forums are back online with normal operations. If you notice any issues or errors related to the forums, please reach out to help@ucar.edu

Problems compiling runoff_to_ocean on Cheyenne

minminfu

Member
I am using CESM1.2.2.1 for deep time paleoclimate, and I would like to compile the runoff_to_ocean utility on Cheyenne.

Unfortunately, I am running into this error.

ld: /glade/u/apps/ch/opt/netcdf-mpi/4.6.1/mpt/2.19/intel/17.0.1/lib/libnetcdf.a(libdispatch_la-dfile.o): in function `NC_check_file_type':
dfile.c:(.text+0x76c): undefined reference to `MPI_File_open'
ld: dfile.c:(.text+0x790): undefined reference to `MPI_File_get_size'
ld: dfile.c:(.text+0x88d): undefined reference to `MPI_File_read_at_all'
ld: dfile.c:(.text+0xa36): undefined reference to `MPI_File_read_at_all'
ld: dfile.c:(.text+0xa8e): undefined reference to `MPI_File_close'

I am following the instructions provided:

cd /glade/work/mjfu/cesm1_2_2_1/tools/mapping/gen_mapping_files/runoff_to_ocn/src
export CCSMROOT=/glade/work/mjfu/cesm1_2_2_1
$CCSMROOT/scripts/ccsm_utils/Machines/configure -mach cheyenne
./build.csh


env_mach_specific is generated as follows

#! /bin/tcsh

# -------------------------------------------------------------------------
# Laramie build specific settings
# -------------------------------------------------------------------------

source /etc/profile.d/modules.csh

module purge

module load intel/17.0.1
module load ncarenv/1.2
module load mkl
module load ncarcompilers/0.4.1
module load mpt/2.19
if( $MPILIB == "mpi-serial" ) then
module load netcdf/4.4.1.1
else
module load netcdf-mpi/4.6.1
module load pnetcdf/1.11.0
endif
# -------------------------------------------------------------------------
# Build and runtime environment variables - edit before the initial build
# -------------------------------------------------------------------------

setenv OMP_STACKSIZE 256M
setenv NETCDF_PATH $NETCDF
setenv PNETCDF_PATH $PNETCDF



Thank you for your help! It is much appreciated!
 

oleson

Keith Oleson
CSEG and Liaisons
Staff member
I updated to the module configuration in release-cesm2.0.0 and that compiled successfully on cheyenne:

/glade/work/oleson/cesm1_2_2_1/tools/mapping/gen_mapping_files/runoff_to_ocn/build.csh
/glade/work/oleson/cesm1_2_2_1/tools/mapping/gen_mapping_files/runoff_to_ocn/env_mach_specific

I haven't tried running the executable though. You could also just try using release-cesm2.0.0.
 

minminfu

Member
Thank you! It compiles now. I will follow up with whether the executable works.

I note below the differences between mine and your env_mach_specific.cheyenne

module load ncarenv/1.0 -> module load ncarenv/1.2
module load ncarcompilers/0.3.5 -> module load ncarcompilers/0.4.1
module load mpt/2.15 -> module load mpt/2.19
module load netcdf-mpi/4.4.1.1 -> module load netcdf-mpi/4.6.1
module load pnetcdf/1.8.0 -> module load pnetcdf/1.11.0
 
Top