对“_gfortran_runtime_error_at”的未定义引用

对“_gfortran_runtime_error_at”的未定义引用

我使用的模型是在 Ubuntu 14.04 下编写的 Fortran90。Ubuntu 软件中心安装了 gfortran 95 编译器 (gfortran 4:4.8.2-1ubuntu6) 和 gcc 4:4.8.2-1ubuntu6。安装的 gcc 在 usr/lib/gcc/x86_64-linux/gnu 中也有一个 4.9 空文件夹。所需的 netCDF 库 (netCDF C 和 Fortran netCDF) 按照以下建议安装:http://www.unidata.ucar.edu/software/netcdf/docs/. netcdf 被构建为共享库。

编译器选项和LDFLAGS在compiler_options.inc文件中按以下方式设置:

ifeq ($(COMPILER), gfortran)
FPP= -x f95-cpp-input 
ifdef TESTING 
OPTS=-g -O0 -W -Wall -pedantic-errors -fbounds-check -fbacktrace \
-ffpe-trap=invalid,zero,overflow -frange-check #-Werror 
else
OPTS=-O3 -pg -g
endif
endif

INCDF=-I$(NCPATH)/include 
LNCDF=-L$(NCPATH)/lib -lnetcdff -lnetcdf 
LDFLAGS=$(INCDF) $(LNCDF) 

当我编译模型时,我收到以下消息:

/home/Beata/kid_a_setup/src/test_cases_2d.f90:1446: undefined reference to  `_gfortran_runtime_error_at' 
/home/Beata/kid_a_setup/src/test_cases_2d.f90:1446: undefined reference to `_gfortran_runtime_error_at' 
/home/Beata/kid_a_setup/src/test_cases_2d.f90:1446: undefined reference to `_gfortran_runtime_error_at' 
/home/Beata/kid_a_setup/src/test_cases_2d.f90:1449: undefined reference to `_gfortran_runtime_error_at' 
../obj/test_cases_2d.o:/home/Beata/kid_a_setup/src/test_cases_2d.f90:1449: more   undefined references to `_gfortran_runtime_error_at' follow 
../obj/test_cases_2d.o: In function `__test_cases_2d_MOD_set_gate_thermo_profile':

看起来 gcc 可能没有找到 fortran 库。

有人可以向我解释导致错误的原因以及如何修复它吗?

相关内容