首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将英特尔MKL与libdl与gold linker链接?

如何将英特尔MKL与libdl与gold linker链接?
EN

Stack Overflow用户
提问于 2017-07-08 05:17:18
回答 1查看 139关注 0票数 1

我在CentOS上使用黄金链接器连接Intel MKL和libdl时遇到了问题:

当我运行这个脚本时:

代码语言:javascript
复制
#!/bin/bash

MKL_INC=$MKL_INSTALL_DIR/include
MKL_LIB=$MKL_INSTALL_DIR/lib

. /opt/rh/devtoolset-6/enable

cat > t.c << end_mkltest

#include <dlfcn.h>
#include "mkl_service.h"

int main() {
    dlerror();              /* use libdl */
    mkl_set_num_threads(1); /* use mkl   */
}

end_mkltest

gcc -I$MKL_INC -c t.c -o t.o
gcc -L$MKL_LIB -fuse-ld=gold t.o -lmkl_rt -ldl

我得到了:

代码语言:javascript
复制
libmkl_rt.so: error: undefined reference to 'calloc'
libmkl_rt.so: error: undefined reference to 'realloc'
libmkl_rt.so: error: undefined reference to 'malloc'
libmkl_rt.so: error: undefined reference to 'free'

我们使用的是:

代码语言:javascript
复制
CentOS 7.3
devtoolset-6
mkl-2017.2.174.tar.bz2

有什么想法吗?

EN

回答 1

Stack Overflow用户

发布于 2017-07-17 04:01:11

这应该是可行的。你能发布这个命令所显示的链接器命令吗?

代码语言:javascript
复制
gcc -v -L$MKL_LIB -fuse-ld=gold t.o -lmkl_rt -ldl

(很抱歉,由于缺乏声誉,无法将此作为评论发布。)

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

https://stackoverflow.com/questions/44979768

复制
相关文章

相似问题

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