The MPAS 7.0 compilation fails during the pio check. I've edited the Makefile so the output is sent to standard output rather than /dev/null. Result is below along with additional info. Looks like a pathname problem related to a mystery MPAS include file (maybe?), but I've been unable to hunt it down. Thanks in advance for any help.
-bash-4.2$ make gfortran
( make all
"FC_PARALLEL = mpif90"
"CC_PARALLEL = mpicc"
"CXX_PARALLEL = mpicxx"
"FC_SERIAL = gfortran"
"CC_SERIAL = gcc"
"CXX_SERIAL = g++"
"FFLAGS_PROMOTION = -fdefault-real-8 -fdefault-double-8"
"FFLAGS_OPT = -O3 -m64 -ffree-line-length-none -fconvert=big-endian -ffree-form"
"CFLAGS_OPT = -O3 -m64"
"CXXFLAGS_OPT = -O3 -m64"
"LDFLAGS_OPT = -O3 -m64"
"FFLAGS_DEBUG = -g -m64 -ffree-line-length-none -fconvert=big-endian -ffree-form -fbounds-check -fbacktrace -ffpe-trap=invalid,zero,overflow"
"CFLAGS_DEBUG = -g -m64"
"CXXFLAGS_DEBUG = -O3 -m64"
"LDFLAGS_DEBUG = -g -m64"
"FFLAGS_OMP = -fopenmp"
"CFLAGS_OMP = -fopenmp"
"CORE = atmosphere"
"DEBUG = "
"USE_PAPI = "
"OPENMP = "
"CPPFLAGS = -D_MPI" )
make[1]: Entering directory `/home/rafkin/MPAS-Model'
Checking for a usable PIO library...
pio1.f90:1:137:
program pio1; use pio; use pionfatt_mod; integer, parameter :: MPAS_IO_OFFSET_KIND = PIO_OFFSET; integer, parameter :: MPAS_INT_FILLVAL = NF_FILL_INT; end program
1
Error: Parameter 'nf_fill_int' at (1) has not been declared or is a variable, which does not reduce to a constant expression
pio2.f90:1:66:
program pio2; use pio; integer, parameter :: MPAS_IO_OFFSET_KIND = PIO_OFFSET_KIND; integer, parameter :: MPAS_INT_FILLVAL = PIO_FILL_INT; end program
1
Error: Parameter 'pio_offset_kind' at (1) has not been declared or is a variable, which does not reduce to a constant expression
pio2.f90:1:124:
program pio2; use pio; integer, parameter :: MPAS_IO_OFFSET_KIND = PIO_OFFSET_KIND; integer, parameter :: MPAS_INT_FILLVAL = PIO_FILL_INT; end program
1
Error: Parameter 'pio_fill_int' at (1) has not been declared or is a variable, which does not reduce to a constant expression
************ ERROR ************
Failed to compile a PIO test program
Please ensure the PIO environment variable is set to the PIO installation directory
************ ERROR ************
make[1]: *** [pio_test] Error 1
make[1]: Leaving directory `/home/rafkin/MPAS-Model'
make: *** [gfortran] Error 2
I'm on CentOS7 using gfortran 5.5.0_4 with mpich 3.3.1, NetCDF 4.6.3_1, PNetCDF 1.7.0_2, and pio 1.7.2.
-bash-4.2$ echo $CORE $NETCDF $PNETCDF $PIO
atmosphere /home/linuxbrew/.linuxbrew/Cellar/netcdf/4.6.3_1 /home/linuxbrew/.linuxbrew/Cellar/parallel-netcdf/1.7.0_2 /home/linuxbrew/.linuxbrew/Cellar/pio/1.7.2
bash-4.2$ uname -a
Linux mpas.boulder.swri.edu 3.10.0-957.el7.x86_64 #1 SMP Thu Nov 8 23:39:32 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
-bash-4.2$ make gfortran
( make all
"FC_PARALLEL = mpif90"
"CC_PARALLEL = mpicc"
"CXX_PARALLEL = mpicxx"
"FC_SERIAL = gfortran"
"CC_SERIAL = gcc"
"CXX_SERIAL = g++"
"FFLAGS_PROMOTION = -fdefault-real-8 -fdefault-double-8"
"FFLAGS_OPT = -O3 -m64 -ffree-line-length-none -fconvert=big-endian -ffree-form"
"CFLAGS_OPT = -O3 -m64"
"CXXFLAGS_OPT = -O3 -m64"
"LDFLAGS_OPT = -O3 -m64"
"FFLAGS_DEBUG = -g -m64 -ffree-line-length-none -fconvert=big-endian -ffree-form -fbounds-check -fbacktrace -ffpe-trap=invalid,zero,overflow"
"CFLAGS_DEBUG = -g -m64"
"CXXFLAGS_DEBUG = -O3 -m64"
"LDFLAGS_DEBUG = -g -m64"
"FFLAGS_OMP = -fopenmp"
"CFLAGS_OMP = -fopenmp"
"CORE = atmosphere"
"DEBUG = "
"USE_PAPI = "
"OPENMP = "
"CPPFLAGS = -D_MPI" )
make[1]: Entering directory `/home/rafkin/MPAS-Model'
Checking for a usable PIO library...
pio1.f90:1:137:
program pio1; use pio; use pionfatt_mod; integer, parameter :: MPAS_IO_OFFSET_KIND = PIO_OFFSET; integer, parameter :: MPAS_INT_FILLVAL = NF_FILL_INT; end program
1
Error: Parameter 'nf_fill_int' at (1) has not been declared or is a variable, which does not reduce to a constant expression
pio2.f90:1:66:
program pio2; use pio; integer, parameter :: MPAS_IO_OFFSET_KIND = PIO_OFFSET_KIND; integer, parameter :: MPAS_INT_FILLVAL = PIO_FILL_INT; end program
1
Error: Parameter 'pio_offset_kind' at (1) has not been declared or is a variable, which does not reduce to a constant expression
pio2.f90:1:124:
program pio2; use pio; integer, parameter :: MPAS_IO_OFFSET_KIND = PIO_OFFSET_KIND; integer, parameter :: MPAS_INT_FILLVAL = PIO_FILL_INT; end program
1
Error: Parameter 'pio_fill_int' at (1) has not been declared or is a variable, which does not reduce to a constant expression
************ ERROR ************
Failed to compile a PIO test program
Please ensure the PIO environment variable is set to the PIO installation directory
************ ERROR ************
make[1]: *** [pio_test] Error 1
make[1]: Leaving directory `/home/rafkin/MPAS-Model'
make: *** [gfortran] Error 2
I'm on CentOS7 using gfortran 5.5.0_4 with mpich 3.3.1, NetCDF 4.6.3_1, PNetCDF 1.7.0_2, and pio 1.7.2.
-bash-4.2$ echo $CORE $NETCDF $PNETCDF $PIO
atmosphere /home/linuxbrew/.linuxbrew/Cellar/netcdf/4.6.3_1 /home/linuxbrew/.linuxbrew/Cellar/parallel-netcdf/1.7.0_2 /home/linuxbrew/.linuxbrew/Cellar/pio/1.7.2
bash-4.2$ uname -a
Linux mpas.boulder.swri.edu 3.10.0-957.el7.x86_64 #1 SMP Thu Nov 8 23:39:32 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux