首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >仍然是Intel-MKL的链接错误。

仍然是Intel-MKL的链接错误。
EN

Stack Overflow用户
提问于 2013-10-05 06:51:53
回答 1查看 3.1K关注 0票数 0

这是QT项目的配置:

代码语言:javascript
复制
    unix {
    INCLUDEPATH += /opt/intel/mkl/include
    LIBS += -L/opt/intel/mkl/lib/intel64 \
    -lmkl_intel_lp64 -lmkl_intel_thread -lmkl_core -lmkl_def \
    -liomp5 -lpthread -ldl -lm
    }

而错误是

我已经链接了-lm标志,为什么?

更新:

代码语言:javascript
复制
   ubuntu@ubuntu-desktop:/opt/intel/mkl/tools$ ./mkl_link_tool -check_mkl_presence

   Intel(R) Math Kernel Library (Intel(R) MKL) Link Tool v4.0
   ==========================================================

   Unknown mode. Specify -libs, -opts, -env or compilation line

   Configuration
   =============

   MKL version:            11.1
   OS:                     lnx
   Architecture:           intel64
   Compiler:               intel_f
   Linking:                dynamic
   Interface layer:        lp64
   Parallel:               yes
   OpenMP library:         iomp5

   ubuntu@ubuntu-desktop:/opt/intel/mkl/tools$ ./mkl_link_tool -check_mkl_presence -libs -opts -env

   Intel(R) Math Kernel Library (Intel(R) MKL) Link Tool v4.0
   ==========================================================

   Output
   ======

   Compiler option(s):
   -I/opt/intel/composer_xe_2013_sp1.0.080/mkl/include

   Linking line:
   -L/opt/intel/composer_xe_2013_sp1.0.080/mkl/lib/intel64 -lmkl_intel_lp64 -lmkl_intel_thread -lmkl_core -openmp -lpthread -lm

   Environment variable(s):
   export LD_LIBRARY_PATH=/opt/intel/composer_xe_2013_sp1.0.080/mkl/../compiler/lib/intel64:/opt/intel/composer_xe_2013_sp1.0.080/mkl/lib/intel64:$LD_LIBRARY_PATH;

   ubuntu@ubuntu-desktop:/opt/intel/mkl/tools$ 

UPDATED2:

代码语言:javascript
复制
    ubuntu@ubuntu-desktop:/opt/intel/mkl/lib/intel64$ ldd libmkl_core.so 
    linux-vdso.so.1 =>  (0x00007fff2b589000)
    libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007fe268d8d000)
    libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fe2689ce000)
    /lib64/ld-linux-x86-64.so.2 (0x00007fe26a50c000)
    ubuntu@ubuntu-desktop:/opt/intel/mkl/lib/intel64$ 

我使用了ldd命令来查看libmkl_core.so所需的库,它没有显示libm.so或数学库。为什么在Qt创建者中,它显示了undefined reference to 'logf'

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-10-05 07:23:28

除了英特尔MKL链接线顾问 (帮助您为gcc/icc编译器生成正确的编译和链接选项)之外,还有另一个预请求可能需要注意--设置环境变量。

为了使用MKL,您需要正确地设置一些环境变量。Intel已经提供了一个脚本来简化这个设置。您可以将一行添加到您的shell配置文件中,比如.bash_profile。有关更多细节,请阅读MKL文档的入门部分。

http://software.intel.com/en-us/node/438542

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19194920

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档