首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Intel MKL: ld编译C代码:未知选项:--不需要

使用Intel MKL: ld编译C代码:未知选项:--不需要
EN

Stack Overflow用户
提问于 2019-11-29 10:07:39
回答 1查看 446关注 0票数 0

我编写了一个C文件(template.c),它使用了MKL库(我已经安装了这个库)。我使用这个shell脚本编译我的代码(template.c)。假设C文件是最小的-它导入MKL库并有一个主函数-就是它。

代码语言:javascript
复制
source /opt/intel/compilers_and_libraries_2019.5.281/mac/mkl/bin/mklvars.sh intel64
gcc-9 -fopenmp -m64 -I${MKLROOT}/include -c template.c
gcc-9 -L${MKLROOT}/lib -Wl,--no-as-needed -lmkl_intel_lp64 -lmkl_gnu_thread -lmkl_core -lgomp -lpthread -lm -ldl template.o -o template
./template

但是,我在Mac (Intel 64位处理器)上有以下错误:

ld:未知选项:-不需要

对于为什么会发生这种情况有什么暗示吗?我用的是国产最新版GCC。

脚本的第一行来源于脚本使用的环境变量(如$MKLROOT )。之后,它应该创建一个对象文件,并最终运行名为template的可执行文件。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-12-04 08:28:46

请确保您已经为选定的接口层使用了推荐的编译器选项。

警告:将Intel(R) MKL库与为不同接口层编译的对象连接可能会导致运行时错误。

供参考,请通过以下链接:

英特尔MKL链路线顾问https://software.intel.com/en-us/articles/intel-mkl-link-line-advisor

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

https://stackoverflow.com/questions/59102713

复制
相关文章

相似问题

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