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

PIO version?

I'm in dire need of running a legacy version of CESM (svn checkout https://svn-ccsm-models.cgd.ucar.edu/cesm1/exp_tags/cesm1_3_aofluxd02/), but unfortunately this subversion command ends with an error saying that certain external definitions were not processed:

svn: E205011: Failure occurred processing one or more externals definitions

and it appears one of the missing pieces was the pio source. Would anyone know which version of pio might work with this particular version of cesm1_3? I tried the pio code from cesm1.2.2 and also cesm1_3_beta18 but they both fail build.

Also, for a given cesm distribution, how can you tell which version of pio that you have?

Thanks,
Mark Branson
 
I know this is not a supported version anymore but just in case there's an easy answer for this: I'm trying to compile this on Derecho and the pio build log says:

CMake Error at /glade/derecho/scratch/branson/F_AMIP/bld/pio/tryCompileCSIZEOF/CMakeFiles/CMakeTmp/CMakeLists.txt:17 (add_executable):


Cannot find source file:

//TryCSizeOf.f90

It seems like it would be a incorrect or missing path somewhere because that test program does exist in the CMake directory, but I can't seem to find where it tries to get this path.
 
Thanks. Yeah, the CMake directory was missing when I checked out this tag, but I grabbed that before I created the case.

Directory: /glade/u/home/branson/cesm1_3_aofluxd02/scripts/ccsm_utils/CMake


ccsm_utils/CMake> dir


total 114


drwxr-xr-x 3 branson ncar 4096 Jan 11 13:37 ./


drwxr-xr-x 9 branson ncar 4096 Jan 10 12:51 ../


-rw-r--r-- 1 branson ncar 1959 Oct 20 2014 CESM_utils.cmake


-rw-r--r-- 1 branson ncar 350 Oct 20 2014 ChangeLog


-rw-r--r-- 1 branson ncar 6068 Oct 20 2014 Compilers.cmake


-rw-r--r-- 1 branson ncar 1938 Oct 20 2014 FindNETCDF.cmake


-rw-r--r-- 1 branson ncar 1824 Oct 20 2014 FindpFUnit.cmake


-rw-r--r-- 1 branson ncar 1476 Oct 20 2014 FindPnetcdf.cmake


-rw-r--r-- 1 branson ncar 3226 Oct 20 2014 genf90_utils.cmake


-rw-r--r-- 1 branson ncar 76 Oct 20 2014 .gitignore


-rw-r--r-- 1 branson ncar 1331 Oct 20 2014 LICENSE


-rw-r--r-- 1 branson ncar 8443 Oct 20 2014 pFUnit_utils.cmake


-rw-r--r-- 1 branson ncar 905 Oct 20 2014 README.md


-rw-r--r-- 1 branson ncar 5079 Oct 20 2014 Sourcelist_utils.cmake


drwxr-xr-x 6 branson ncar 4096 Jan 10 12:05 .svn/


-rw-r--r-- 1 branson ncar 174 Oct 20 2014 TryCSizeOf.f90


-rw-r--r-- 1 branson ncar 161 Oct 20 2014 TryMPIIO.f90


-rw-r--r-- 1 branson ncar 89 Oct 20 2014 TryMPIMod.f90


-rw-r--r-- 1 branson ncar 346 Oct 20 2014 TryMPISERIAL.f90


-rw-r--r-- 1 branson ncar 53 Oct 20 2014 TryPnetcdf_inc.f90


-rw-r--r-- 1 branson ncar 98 Oct 20 2014 TryPnetcdf_mod.f90
 

jedwards

CSEG and Liaisons
Staff member
In the Makefile /glade/u/home/branson/cesm1_3_aofluxd02/scripts/F_AMIP/Tools/Makefile
Add a -DUSER_CMAKE_MODULE_PATH= path/to/that/cmake/directory
at line 483
 
Awesome. Now we're getting a little bit further. The new error in the PIO build file is:

CMake Error at CMakeLists.txt:190 (ADD_LIBRARY):
Target "pio" links to item " -LNETCDF_LIB_DIR-NOTFOUND -lnetcdf" which has
leading or trailing whitespace. This is now an error according to policy
CMP0004.

Which makes me suspect that the netcdf library path is incorrect or missing somewhere.
 
On a whim I hacked FindNETCDF.cmake and added this line:
set(NETCDF_FORTRAN_LIB_DIR /glade/u/apps/derecho/23.06/spack/opt/spack/netcdf/4.9.2/oneapi/2023.0.0/iijr/lib)

and now the entire model compiles (it's an F_AMIP case) but then at the link step I'm getting a ton of undefined symbols.
chem_surfvals.F90:(.text+0x1a55): undefined reference to `netcdf_mp_nf90_get_var_1d_fourbyteint_'


ld: chem_surfvals.F90:(.text+0x1c29): undefined reference to `netcdf_mp_nf90_get_var_1d_eightbytereal_'


ld: chem_surfvals.F90:(.text+0x1c79): undefined reference to `netcdf_mp_nf90_get_var_1d_eightbytereal_'

...
ad nauseam.

So maybe the pio compile still needs some work???
 
Top