zfh1997 发表于 2017-3-12 16:08:36

使用mkl的时候:无法解析的外部符号

我使用intel parallel studio xe中的ivf编译fortran,ide的是vs2015,在链接的时候报错 :
error LNK2019: 无法解析的外部符号 _SGETRF_F95,该符号在函数 _MAIN__ 中被引用 Source1.obj源代码如下:
program test use lapack95
use f95_precision
implicit none

! Variables
real :: a(3,3)
data a /1,2,3,4,5,6,7,8,9/

! Body of Console3
print *, 'Hello'
call getrf(a)

end program test个人觉得应该是linker设置问题,无法找到相应的lib文件,我按照网上的方法都尝试了一遍可是还是无效。下面是我的lib设置:
https://segmentfault.com/img/bVKvxs?w=1095&h=735
https://segmentfault.com/img/bVKvxm?w=1054&h=650
https://segmentfault.com/img/bVKvxu?w=1273&h=735
https://segmentfault.com/img/bVKvxy?w=1273&h=735
https://segmentfault.com/img/bVKvxG?w=676&h=317

求大神解答

下面附上我在segmentfault上提问的链接,以防图挂:
https://segmentfault.com/q/1010000008661997#answers-title

li913 发表于 2017-3-12 17:00:37

本帖最后由 li913 于 2017-3-12 17:02 编辑

需要   include

vvt 发表于 2017-3-12 17:25:17

我这里不需要include,直接 use,然后包含 mkl_lapack95.lib 就可以运行了。

zfh1997 发表于 2017-3-12 19:44:38

li913 发表于 2017-3-12 17:00
需要   include

十分感谢回复!
我在前面加上了include "lapack.f90"
属性页面的Adddition Dependencies也包含了mkl_lapack.lib
Additional Library Dependencies 也设置成了包含lib的目录
但是还是出现
错误               
error LNK2019: 无法解析的外部符号 _SGETRF_F95,该符号在函数 _MAIN__ 中被引用                Source1.obj       
错误               
fatal error LNK1120: 1 个无法解析的外部命令               
Debug\Console4.exe       


求问这是什么情况

zfh1997 发表于 2017-3-12 19:48:23

vvt 发表于 2017-3-12 17:25
我这里不需要include,直接 use,然后包含 mkl_lapack95.lib 就可以运行了。

十分感谢回复!

我包含了mkl_lapack95.lib了,并且按照Developer Guide for Intel® Math Kernel Library 2017上的说明重新配置了include和lib,但是还是不行啊

求进一步解答

fcode 发表于 2017-3-12 20:07:05

加入我们的QQ群,找群主:2338021
QQ上容易截图~~
页: [1]
查看完整版本: 使用mkl的时候:无法解析的外部符号