Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/fortran/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Fortran 架构x86“U 64”的未定义符号_r8“巨大的”;_Fortran_Fortran90_Fortran77 - Fatal编程技术网

Fortran 架构x86“U 64”的未定义符号_r8“巨大的”;

Fortran 架构x86“U 64”的未定义符号_r8“巨大的”;,fortran,fortran90,fortran77,Fortran,Fortran90,Fortran77,我有一个.f90文件,我用它编译: gfortran -c -o objs/mod_interp.o ../extern/mod_interp.f90 -g -fPIC -Imods -I../header_files -Jmods 其余对象由F77文件编译而成,然后所有对象都链接到: gfortran -o WIM2d.exec objs/p_WIM2d.o objs/mod_WIM2d_run.o objs/mod_interp.o objs/mod_file_utils.o objs/m

我有一个
.f90
文件,我用它编译:

gfortran -c -o objs/mod_interp.o ../extern/mod_interp.f90 -g -fPIC -Imods -I../header_files -Jmods
其余对象由F77文件编译而成,然后所有对象都链接到:

gfortran -o WIM2d.exec objs/p_WIM2d.o objs/mod_WIM2d_run.o objs/mod_interp.o objs/mod_file_utils.o objs/mod_gridinfo.o objs/mod_wim_init.o objs/mod_common_wim.o objs/mod_wim_prams.o objs/RTparam_outer.o objs/RTparam_fast.o objs/RTparam_hardcoded_v2.o objs/mod_RTparam_utilities.o objs/mod_adv_atten.o objs/mod_advect.o objs/mod_wavesice.o -g -fPIC -Imods -I../header_files
但是,我得到以下错误:

Undefined symbols for architecture x86_64:
  "_r8_huge_", referenced from:
      ___mod_interp_MOD_pwl_interp_2d in mod_interp.o
  "_r8vec_bracket5_", referenced from:
      ___mod_interp_MOD_pwl_interp_2d in mod_interp.o
ld: symbol(s) not found for architecture x86_64
我正在使用OSX 10.10的mac电脑上工作。
有什么建议吗?

我更改了标题。错误不太可能是因为它是Fortran 77或90造成的。始终使用标签。在代码中查找任何出现的
r8_巨大
r8vec_括号5
。它应该在
mod_interp.f90
中。显示相关代码!嗨,弗拉基米尔,谢谢你的提示。这两个“符号”(一个参数和一个函数)似乎在另一个文件中,我没有意识到它与mod_interp.f90中的子程序一起使用。我以为它们是f90或类似的东西的固有特性,但在将这两个东西复制到我的模块后,它编译得很好。我更改了标题。错误不太可能是因为它是Fortran 77或90造成的。始终使用标签。在代码中查找任何出现的
r8_巨大
r8vec_括号5
。它应该在
mod_interp.f90
中。显示相关代码!嗨,弗拉基米尔,谢谢你的提示。这两个“符号”(一个参数和一个函数)似乎在另一个文件中,我没有意识到它与mod_interp.f90中的子程序一起使用。我认为它们是f90或者类似的东西的固有特性,但是在将这两个东西复制到我的模块中之后,它编译得很好。