Hi,
I am first trying to compiling the MPAS following tutorial practice guide. While I build init_atmosphere core, I put
# make gfortran CORE=init_atmosphere PRECISION=single AUTOCLEAN=true
and i get
dqkx@cuit:~/software/WRF4.0/MPAS-Model-8.1.0$ make gfortran CORE=init_atmosphere PRECISION=single AUTOCLEAN=true
NOTE: PRECISION=single is unnecessary, single is the default
( 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 -ffree-line-length-none -fconvert=big-endian -ffree-form" \
"CFLAGS_OPT = -O3" \
"CXXFLAGS_OPT = -O3" \
"LDFLAGS_OPT = -O3" \
"FFLAGS_DEBUG = -g -ffree-line-length-none -fconvert=big-endian -ffree-form -fcheck=all -fbacktrace -ffpe-trap=invalid,zero,overflow" \
"CFLAGS_DEBUG = -g" \
"CXXFLAGS_DEBUG = -g" \
"LDFLAGS_DEBUG = -g" \
"FFLAGS_OMP = -fopenmp" \
"CFLAGS_OMP = -fopenmp" \
"FFLAGS_ACC =" \
"CFLAGS_ACC =" \
"PICFLAG = -fPIC" \
"BUILD_TARGET = gfortran" \
"CORE = init_atmosphere" \
"DEBUG = " \
"USE_PAPI = " \
"OPENMP = " \
"OPENACC = " \
"CPPFLAGS = -D_MPI" )
make[1]: Entering directory '/home/dqkx/software/WRF4.0/MPAS-Model-8.1.0'
NOTE: PRECISION=single is unnecessary, single is the default
Checking for a working PIO library...
PIO 1.x detected.
Checking for mpi_f08 support...
No working mpi_f08 module detected; using mpi module.
cd src; make FC="mpif90" \
CC="mpicc" \
CXX="mpicxx" \
SFC="gfortran" \
SCC="gcc" \
LINKER="mpif90" \
CFLAGS="-O3 "-DSINGLE_PRECISION"" \
CXXFLAGS="-O3 "-DSINGLE_PRECISION"" \
FFLAGS="-O3 -ffree-line-length-none -fconvert=big-endian -ffree-form" \
LDFLAGS="-O3" \
RM="rm -f" \
CPP="cpp -P -traditional" \
CPPFLAGS="-D_MPI -DCORE_INIT_ATMOSPHERE -DMPAS_NAMELIST_SUFFIX=init_atmosphere -DMPAS_EXE_NAME=init_atmosphere_model "-DSINGLE_PRECISION" -DMPAS_NATIVE_TIMERS -DMPAS_GIT_VERSION="unknown" -DMPAS_BUILD_TARGET=gfortran "-DMPAS_PIO_SUPPORT"" \
LIBS="-L/home/dqkx/software/WRF4.0/libraries/PIO/lib -lpio -L/home/dqkx/software/WRF4.0/libraries/netcdf/cfor_combine/lib -lnetcdff -lnetcdf -L/home/dqkx/software/WRF4.0/libraries/pnetcdf/lib -lpnetcdf" \
CPPINCLUDES=" -I/home/dqkx/software/WRF4.0/libraries/PIO/include -I/home/dqkx/software/WRF4.0/libraries/netcdf/cfor_combine/include -I/home/dqkx/software/WRF4.0/libraries/pnetcdf/include" \
FCINCLUDES=" -I/home/dqkx/software/WRF4.0/libraries/PIO/include -I/home/dqkx/software/WRF4.0/libraries/netcdf/cfor_combine/include -I/home/dqkx/software/WRF4.0/libraries/pnetcdf/include" \
CORE="init_atmosphere"\
AUTOCLEAN="false" \
GEN_F90="false" \
NAMELIST_SUFFIX="init_atmosphere" \
EXE_NAME="init_atmosphere_model"
make[2]: Entering directory '/home/dqkx/software/WRF4.0/MPAS-Model-8.1.0/src'
( cd external; make FC="mpif90" SFC="gfortran" CC="mpicc" SCC="gcc" FFLAGS="-O3 -ffree-line-length-none -fconvert=big-endian -ffree-form" CFLAGS="-O3 -DSINGLE_PRECISION" CPP="cpp -P -traditional" NETCDF="/home/dqkx/software/WRF4.0/libraries/netcdf/cfor_combine" CORE="init_atmosphere" all )
make[3]: Entering directory '/home/dqkx/software/WRF4.0/MPAS-Model-8.1.0/src/external'
( cd esmf_time_f90; make FC="mpif90" FFLAGS="-O3 -ffree-line-length-none -fconvert=big-endian -ffree-form" CPP="cpp -P -traditional" CPPFLAGS="-D_MPI -DCORE_INIT_ATMOSPHERE -DMPAS_NAMELIST_SUFFIX=init_atmosphere -DMPAS_EXE_NAME=init_atmosphere_model -DSINGLE_PRECISION -DMPAS_NATIVE_TIMERS -DMPAS_GIT_VERSION=unknown -DMPAS_BUILD_TARGET=gfortran -DMPAS_PIO_SUPPORT -DHIDE_MPI" GEN_F90=false )
make[4]: Entering directory '/home/dqkx/software/WRF4.0/MPAS-Model-8.1.0/src/external/esmf_time_f90'
ar -ru libesmf_time.a *.o
ar: `u' modifier ignored since `D' is the default (see `U')
make[4]: Leaving directory '/home/dqkx/software/WRF4.0/MPAS-Model-8.1.0/src/external/esmf_time_f90'
( cd ezxml; make OBJFILE="ezxml.o" )
make[4]: Entering directory '/home/dqkx/software/WRF4.0/MPAS-Model-8.1.0/src/external/ezxml'
make[4]: 'ezxml.o' is up to date.
make[4]: Leaving directory '/home/dqkx/software/WRF4.0/MPAS-Model-8.1.0/src/external/ezxml'
make -C SMIOL
make[4]: Entering directory '/home/dqkx/software/WRF4.0/MPAS-Model-8.1.0/src/external/SMIOL'
make[4]: Nothing to be done for 'all'.
make[4]: Leaving directory '/home/dqkx/software/WRF4.0/MPAS-Model-8.1.0/src/external/SMIOL'
make[3]: Leaving directory '/home/dqkx/software/WRF4.0/MPAS-Model-8.1.0/src/external'
( cd framework; make CPPFLAGS="-D_MPI -DCORE_INIT_ATMOSPHERE -DMPAS_NAMELIST_SUFFIX=init_atmosphere -DMPAS_EXE_NAME=init_atmosphere_model -DSINGLE_PRECISION -DMPAS_NATIVE_TIMERS -DMPAS_GIT_VERSION=unknown -DMPAS_BUILD_TARGET=gfortran -DMPAS_PIO_SUPPORT" CPPINCLUDES="-I/home/dqkx/software/WRF4.0/libraries/PIO/include -I/home/dqkx/software/WRF4.0/libraries/netcdf/cfor_combine/include -I/home/dqkx/software/WRF4.0/libraries/pnetcdf/include" all )
make[3]: Entering directory '/home/dqkx/software/WRF4.0/MPAS-Model-8.1.0/src/framework'
rm -f mpas_io.o mpas_io.mod
mpif90 -D_MPI -DCORE_INIT_ATMOSPHERE -DMPAS_NAMELIST_SUFFIX=init_atmosphere -DMPAS_EXE_NAME=init_atmosphere_model -DSINGLE_PRECISION -DMPAS_NATIVE_TIMERS -DMPAS_GIT_VERSION=unknown -DMPAS_BUILD_TARGET=gfortran -DMPAS_PIO_SUPPORT -O3 -ffree-line-length-none -fconvert=big-endian -ffree-form -c mpas_io.F -I/home/dqkx/software/WRF4.0/libraries/PIO/include -I/home/dqkx/software/WRF4.0/libraries/netcdf/cfor_combine/include -I/home/dqkx/software/WRF4.0/libraries/pnetcdf/include -I/home/dqkx/software/WRF4.0/libraries/PIO/include -I/home/dqkx/software/WRF4.0/libraries/netcdf/cfor_combine/include -I/home/dqkx/software/WRF4.0/libraries/pnetcdf/include -I../external/esmf_time_f90
mpas_io.F:6432:25:
ierr_local = PIO_strerror(io_global_err, pio_string)
1
Error: Function ‘pio_strerror’ at (1) has no IMPLICIT type
Makefile:124: recipe for target 'mpas_io.o' failed
make[3]: *** [mpas_io.o] Error 1
make[3]: Leaving directory '/home/dqkx/software/WRF4.0/MPAS-Model-8.1.0/src/framework'
Makefile:31: recipe for target 'frame' failed
make[2]: *** [frame] Error 2
make[2]: Leaving directory '/home/dqkx/software/WRF4.0/MPAS-Model-8.1.0/src'
Makefile:1305: recipe for target 'mpas_main' failed
make[1]: *** [mpas_main] Error 2
make[1]: Leaving directory '/home/dqkx/software/WRF4.0/MPAS-Model-8.1.0'
Makefile:382: recipe for target 'gfortran' failed
make: *** [gfortran] Error 2
how can I build init_atmosphere core?
Looking forward to your reply
I am first trying to compiling the MPAS following tutorial practice guide. While I build init_atmosphere core, I put
# make gfortran CORE=init_atmosphere PRECISION=single AUTOCLEAN=true
and i get
dqkx@cuit:~/software/WRF4.0/MPAS-Model-8.1.0$ make gfortran CORE=init_atmosphere PRECISION=single AUTOCLEAN=true
NOTE: PRECISION=single is unnecessary, single is the default
( 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 -ffree-line-length-none -fconvert=big-endian -ffree-form" \
"CFLAGS_OPT = -O3" \
"CXXFLAGS_OPT = -O3" \
"LDFLAGS_OPT = -O3" \
"FFLAGS_DEBUG = -g -ffree-line-length-none -fconvert=big-endian -ffree-form -fcheck=all -fbacktrace -ffpe-trap=invalid,zero,overflow" \
"CFLAGS_DEBUG = -g" \
"CXXFLAGS_DEBUG = -g" \
"LDFLAGS_DEBUG = -g" \
"FFLAGS_OMP = -fopenmp" \
"CFLAGS_OMP = -fopenmp" \
"FFLAGS_ACC =" \
"CFLAGS_ACC =" \
"PICFLAG = -fPIC" \
"BUILD_TARGET = gfortran" \
"CORE = init_atmosphere" \
"DEBUG = " \
"USE_PAPI = " \
"OPENMP = " \
"OPENACC = " \
"CPPFLAGS = -D_MPI" )
make[1]: Entering directory '/home/dqkx/software/WRF4.0/MPAS-Model-8.1.0'
NOTE: PRECISION=single is unnecessary, single is the default
Checking for a working PIO library...
PIO 1.x detected.
Checking for mpi_f08 support...
No working mpi_f08 module detected; using mpi module.
cd src; make FC="mpif90" \
CC="mpicc" \
CXX="mpicxx" \
SFC="gfortran" \
SCC="gcc" \
LINKER="mpif90" \
CFLAGS="-O3 "-DSINGLE_PRECISION"" \
CXXFLAGS="-O3 "-DSINGLE_PRECISION"" \
FFLAGS="-O3 -ffree-line-length-none -fconvert=big-endian -ffree-form" \
LDFLAGS="-O3" \
RM="rm -f" \
CPP="cpp -P -traditional" \
CPPFLAGS="-D_MPI -DCORE_INIT_ATMOSPHERE -DMPAS_NAMELIST_SUFFIX=init_atmosphere -DMPAS_EXE_NAME=init_atmosphere_model "-DSINGLE_PRECISION" -DMPAS_NATIVE_TIMERS -DMPAS_GIT_VERSION="unknown" -DMPAS_BUILD_TARGET=gfortran "-DMPAS_PIO_SUPPORT"" \
LIBS="-L/home/dqkx/software/WRF4.0/libraries/PIO/lib -lpio -L/home/dqkx/software/WRF4.0/libraries/netcdf/cfor_combine/lib -lnetcdff -lnetcdf -L/home/dqkx/software/WRF4.0/libraries/pnetcdf/lib -lpnetcdf" \
CPPINCLUDES=" -I/home/dqkx/software/WRF4.0/libraries/PIO/include -I/home/dqkx/software/WRF4.0/libraries/netcdf/cfor_combine/include -I/home/dqkx/software/WRF4.0/libraries/pnetcdf/include" \
FCINCLUDES=" -I/home/dqkx/software/WRF4.0/libraries/PIO/include -I/home/dqkx/software/WRF4.0/libraries/netcdf/cfor_combine/include -I/home/dqkx/software/WRF4.0/libraries/pnetcdf/include" \
CORE="init_atmosphere"\
AUTOCLEAN="false" \
GEN_F90="false" \
NAMELIST_SUFFIX="init_atmosphere" \
EXE_NAME="init_atmosphere_model"
make[2]: Entering directory '/home/dqkx/software/WRF4.0/MPAS-Model-8.1.0/src'
( cd external; make FC="mpif90" SFC="gfortran" CC="mpicc" SCC="gcc" FFLAGS="-O3 -ffree-line-length-none -fconvert=big-endian -ffree-form" CFLAGS="-O3 -DSINGLE_PRECISION" CPP="cpp -P -traditional" NETCDF="/home/dqkx/software/WRF4.0/libraries/netcdf/cfor_combine" CORE="init_atmosphere" all )
make[3]: Entering directory '/home/dqkx/software/WRF4.0/MPAS-Model-8.1.0/src/external'
( cd esmf_time_f90; make FC="mpif90" FFLAGS="-O3 -ffree-line-length-none -fconvert=big-endian -ffree-form" CPP="cpp -P -traditional" CPPFLAGS="-D_MPI -DCORE_INIT_ATMOSPHERE -DMPAS_NAMELIST_SUFFIX=init_atmosphere -DMPAS_EXE_NAME=init_atmosphere_model -DSINGLE_PRECISION -DMPAS_NATIVE_TIMERS -DMPAS_GIT_VERSION=unknown -DMPAS_BUILD_TARGET=gfortran -DMPAS_PIO_SUPPORT -DHIDE_MPI" GEN_F90=false )
make[4]: Entering directory '/home/dqkx/software/WRF4.0/MPAS-Model-8.1.0/src/external/esmf_time_f90'
ar -ru libesmf_time.a *.o
ar: `u' modifier ignored since `D' is the default (see `U')
make[4]: Leaving directory '/home/dqkx/software/WRF4.0/MPAS-Model-8.1.0/src/external/esmf_time_f90'
( cd ezxml; make OBJFILE="ezxml.o" )
make[4]: Entering directory '/home/dqkx/software/WRF4.0/MPAS-Model-8.1.0/src/external/ezxml'
make[4]: 'ezxml.o' is up to date.
make[4]: Leaving directory '/home/dqkx/software/WRF4.0/MPAS-Model-8.1.0/src/external/ezxml'
make -C SMIOL
make[4]: Entering directory '/home/dqkx/software/WRF4.0/MPAS-Model-8.1.0/src/external/SMIOL'
make[4]: Nothing to be done for 'all'.
make[4]: Leaving directory '/home/dqkx/software/WRF4.0/MPAS-Model-8.1.0/src/external/SMIOL'
make[3]: Leaving directory '/home/dqkx/software/WRF4.0/MPAS-Model-8.1.0/src/external'
( cd framework; make CPPFLAGS="-D_MPI -DCORE_INIT_ATMOSPHERE -DMPAS_NAMELIST_SUFFIX=init_atmosphere -DMPAS_EXE_NAME=init_atmosphere_model -DSINGLE_PRECISION -DMPAS_NATIVE_TIMERS -DMPAS_GIT_VERSION=unknown -DMPAS_BUILD_TARGET=gfortran -DMPAS_PIO_SUPPORT" CPPINCLUDES="-I/home/dqkx/software/WRF4.0/libraries/PIO/include -I/home/dqkx/software/WRF4.0/libraries/netcdf/cfor_combine/include -I/home/dqkx/software/WRF4.0/libraries/pnetcdf/include" all )
make[3]: Entering directory '/home/dqkx/software/WRF4.0/MPAS-Model-8.1.0/src/framework'
rm -f mpas_io.o mpas_io.mod
mpif90 -D_MPI -DCORE_INIT_ATMOSPHERE -DMPAS_NAMELIST_SUFFIX=init_atmosphere -DMPAS_EXE_NAME=init_atmosphere_model -DSINGLE_PRECISION -DMPAS_NATIVE_TIMERS -DMPAS_GIT_VERSION=unknown -DMPAS_BUILD_TARGET=gfortran -DMPAS_PIO_SUPPORT -O3 -ffree-line-length-none -fconvert=big-endian -ffree-form -c mpas_io.F -I/home/dqkx/software/WRF4.0/libraries/PIO/include -I/home/dqkx/software/WRF4.0/libraries/netcdf/cfor_combine/include -I/home/dqkx/software/WRF4.0/libraries/pnetcdf/include -I/home/dqkx/software/WRF4.0/libraries/PIO/include -I/home/dqkx/software/WRF4.0/libraries/netcdf/cfor_combine/include -I/home/dqkx/software/WRF4.0/libraries/pnetcdf/include -I../external/esmf_time_f90
mpas_io.F:6432:25:
ierr_local = PIO_strerror(io_global_err, pio_string)
1
Error: Function ‘pio_strerror’ at (1) has no IMPLICIT type
Makefile:124: recipe for target 'mpas_io.o' failed
make[3]: *** [mpas_io.o] Error 1
make[3]: Leaving directory '/home/dqkx/software/WRF4.0/MPAS-Model-8.1.0/src/framework'
Makefile:31: recipe for target 'frame' failed
make[2]: *** [frame] Error 2
make[2]: Leaving directory '/home/dqkx/software/WRF4.0/MPAS-Model-8.1.0/src'
Makefile:1305: recipe for target 'mpas_main' failed
make[1]: *** [mpas_main] Error 2
make[1]: Leaving directory '/home/dqkx/software/WRF4.0/MPAS-Model-8.1.0'
Makefile:382: recipe for target 'gfortran' failed
make: *** [gfortran] Error 2
how can I build init_atmosphere core?
Looking forward to your reply