gfortran即使使用`-dec-math`也给出`dacosd_`的未定义引用
我试图编译一个使用gfortran
的Fortran应用程序,它与Intel MKL库链接。gfortran即使使用`-dec-math`也给出`dacosd_`的未定义引用
未定义的参考`dacosd_”
有一个acos
或acosd
(以度反余弦),我几乎没有,但我不能编译使用-fall-intrinsics
或-dec-math
标志,按照指示在手册中,因为它们都会产生相同的错误。
我在哪里弄错了,我该如何编译?
我使用的gfortran
版本是5.4.1。
回答:
正如RussF所评论的,这些非标准扩展函数包含在gfortran 7和更高版本中。你需要一个更新的版本。此外,正确的标志是-fdec-math
,而不是-dec-math
。
intrinsic dacosd print *, dacosd(0.5d0)
end
编译如下:
> gfortran-6 -fdec-math dacosd.f90 gfortran-6: error: unrecognized command line option ‘-fdec-math’; did you mean ‘-ffast-math’?
> gfortran-7 -fdec-math dacosd.f90
> ./a.out
60.000000000000007
您可以轻松地做同样的计算与转换
double precision, parameter :: pi = acos(-1.d0) print *, acos(0.5d0)*180/pi
end
,或者你可以定义自己的(d)acosd
功能这种方式,留便携。
以上是 gfortran即使使用`-dec-math`也给出`dacosd_`的未定义引用 的全部内容, 来源链接: utcz.com/qa/261034.html