I installed 17.4 version(64 bit) of PGI Compiler and mpich(ver. 3.2) on my Linux system.
I had to build ESMF coupling application on my system.
And, I didn’t have a problem on making ESMF library and ESMF coupling application when I tried with version 6.3.0rp1 of ESMF.
But, when I tried it with version 7.0.1 of ESMF, which is the recently version of ESMF, I had a problem.
Although I didn’t have a problem on making ESMF library, I had a problem on building & compiling application using ESMF library.
The error message is shown below.
[kesti@couple AtmOcn7]$ make
mpif90 -c -g -fpic -lpthread -I/home/kesti/ESMF/SRC/7.0.1/mod/modg/Linux.pgi.64.mpich3.default -I/home/kesti/ESMF/SRC/7.0.1/src/include -I/opt/compiler/pgi/linux86-64/10.1/APPLIC1/NETCDF4/4.1.3/include -DESMF_NO_INTEGER_1_BYTE -DESMF_NO_INTEGER_2_BYTE -DESMF_LAPACK=1 -DESMF_MOAB=1 -DESMF_NO_ACC_SOFTWARE_STACK=1 -DESMF_NETCDF=1 -DESMF_PIO=1 -DESMF_MPIIO -DESMF_NO_OPENMP -DESMF_NO_OPENACC -DSx86_64_small=1 -DESMF_OS_Linux=1 -DESMF_PGIVERSION_MAJOR=17 -DESMF_PGIVERSION_MINOR=4 -DESMF_PGIVERSION_PATCH=0 -I/home/kesti/WRF/WRFV3-ESMF/frame -I/home/kesti/WRF/WRFV3-ESMF/external/io_esmf -I/home/kesti/WRF/WRFV3-ESMF/share -I/home/kesti/WRF/WRFV3-ESMF/inc -I/home/kesti/WRF/WRFV3-ESMF/main -I/home/kesti/WRF/WRFV3-ESMF/test -I./includes -I/home/kesti/WRF/WRFV3-ESMF/external/io_netcdf -I/home/kesti/WRF/WRFV3-ESMF/external/io_int -I/home/kesti/WRF/WRFV3-ESMF/phys atm.F90
PGF90-S-0000-Internal compiler error. import: module esmf_f90interfacemod (2146,base=2147) member symbol this (offset=3): not found! 0 (atm.F90: 32)
PGF90-F-0000-Internal compiler error. interf:new_symbol, symbol not found 1974 (atm.F90: 32)
PGF90/x86-64 Linux 17.4-0: compilation aborted
make: *** [atm.o] Error 2
This message said the "Internal compiler error’ with error code ‘0000’
I guess, this error is originated from the “Symbol table” matching between “Fortran” codes and “C++” codes using esmf_f90interfacemod.
But, I haven’t seen this message ever, so I don’t know how I can deal with this error.
Could you tell me how can I deal with this issue, in detail?
Thanks.
tull
2
Hooni90,
Here are details from the log of building ESMF 7.0.0 with 17.5
PGI compilers and Mpich 3.2.
dave
- User set ESMF environment variables *
ESMF_DIR=/proj/build/libs/17S/linux86-64/esmf/mpich/esmf
ESMF_COMM=mpich2
ESMF_INSTALL_PREFIX=/proj/pgi/linux86-64/2017/esmf/esmf-7.0.0/mpich-3.2
ESMF_BOPT=0
ESMF_COMPILER=pgi
- ESMF environment variables *
ESMF_DIR: /proj/build/libs/17S/linux86-64/esmf/mpich/esmf
ESMF_OS: Linux
ESMF_MACHINE: x86_64
ESMF_ABI: 64
ESMF_COMPILER: pgi
ESMF_BOPT: 0
ESMF_COMM: mpich2
ESMF_SITE: default
ESMF_PTHREADS: ON
ESMF_OPENMP: OFF
ESMF_OPENACC: OFF
ESMF_ARRAY_LITE: FALSE
ESMF_NO_INTEGER_1_BYTE: TRUE
ESMF_NO_INTEGER_2_BYTE: TRUE
ESMF_FORTRANSYMBOLS: default
ESMF_DEFER_LIB_BUILD: ON
ESMF_SHARED_LIB_BUILD: ON
ESMF_TESTEXHAUSTIVE: OFF
ESMF_TESTWITHTHREADS: OFF
ESMF_TESTMPMD: OFF
ESMF_TESTSHAREDOBJ: OFF
ESMF_TESTFORCEOPENMP: OFF
ESMF_TESTFORCEOPENACC: OFF
ESMF_TESTHARNESS_ARRAY: default
ESMF_TESTHARNESS_FIELD: default
ESMF_MPIRUN: mpirun
Fortran compiler flags:
ESMF_F90COMPILEOPTS: -fpic -lpthread
ESMF_F90COMPILEPATHS: -I/proj/build/libs/17S/linux86-64/esmf/mpich/esmf/mod/mod0/Linux.pgi.64.mpich2.default -I/proj/build/libs/17S/linux86-64/esmf/mpich/esmf/src/include
ESMF_F90COMPILECPPFLAGS: -DESMF_NO_INTEGER_1_BYTE -DESMF_NO_INTEGER_2_BYTE -DESMF_LAPACK=1 -DESMF_MOAB=1 -DESMF_NO_ACC_SOFTWARE_STACK=1 -DESMF_PIO=1 -DESMF_MPIIO -DESMF_NO_OPENMP -DESMF_NO_OPENACC -DSx86_64_small=1 -DESMF_OS_Linux=1 -DESMF_PGIVERSION_MAJOR=17 -DESMF_PGIVERSION_MINOR=5 -DESMF_PGIVERSION_PATCH=0
ESMF_F90COMPILEFREECPP:
ESMF_F90COMPILEFREENOCPP: -Mfreeform
ESMF_F90COMPILEFIXCPP: -Mpreprocess -Mnofreeform
ESMF_F90COMPILEFIXNOCPP:
Fortran linker flags:
ESMF_F90LINKOPTS: -lpthread -Wl,–no-as-needed
ESMF_F90LINKPATHS: -L/proj/build/libs/17S/linux86-64/esmf/mpich/esmf/lib/lib0/Linux.pgi.64.mpich2.default -L/proj/pgi/linux86-64/130244-rel/libso
ESMF_F90LINKRPATHS: -Wl,-rpath,/proj/build/libs/17S/linux86-64/esmf/mpich/esmf/lib/lib0/Linux.pgi.64.mpich2.default -Wl,-rpath,/proj/pgi/linux86-64/130244-rel/libso
ESMF_F90LINKLIBS: -pgc++libs -ldl
ESMF_F90ESMFLINKLIBS: -lesmf -pgc++libs -ldl
C++ compiler flags:
ESMF_CXXCOMPILEOPTS: -fpic -lpthread
ESMF_CXXCOMPILEPATHS: -I/proj/build/libs/17S/linux86-64/esmf/mpich/esmf/src/include
ESMF_CXXCOMPILECPPFLAGS: -DESMF_NO_INTEGER_1_BYTE -DESMF_NO_INTEGER_2_BYTE -DESMF_LAPACK=1 -DESMF_MOAB=1 -DESMF_NO_ACC_SOFTWARE_STACK=1 -DESMF_PIO=1 -DESMF_MPIIO -DESMF_NO_OPENMP -DESMF_NO_OPENACC -DSx86_64_small=1 -DESMF_OS_Linux=1 -D__SDIR__=‘’
C++ linker flags:
ESMF_CXXLINKOPTS: -lpthread -Wl,–no-as-needed
ESMF_CXXLINKPATHS: -L/proj/build/libs/17S/linux86-64/esmf/mpich/esmf/lib/lib0/Linux.pgi.64.mpich2.default -L/proj/pgi/linux86-64/130244-rel/libso
ESMF_CXXLINKRPATHS: -Wl,-rpath,/proj/build/libs/17S/linux86-64/esmf/mpich/esmf/lib/lib0/Linux.pgi.64.mpich2.default -Wl,-rpath,/proj/pgi/linux86-64/130244-rel/libso
ESMF_CXXLINKLIBS: -lmpifort -pgf90libs -ldl
ESMF_CXXESMFLINKLIBS: -lesmf -lmpifort -pgf90libs -ldl