2014-10-30 78 views
0

编译+连接某些MIC(英特尔至强融核协处理器)代码时,我收到了此警告。带MIC的英特尔编译器警告 - 缺少库

x86_64-k1om-linux-ld: warning: libimf.so, needed by /usr/local/Intel/parallel_studio_xe_2013_sp1/composer_xe_2015.0.090/compiler/lib/mic/liboffload.so.5, not found (try using -rpath or -rpath-link) 
x86_64-k1om-linux-ld: warning: libsvml.so, needed by /usr/local/Intel/parallel_studio_xe_2013_sp1/composer_xe_2015.0.090/compiler/lib/mic/liboffload.so.5, not found (try using -rpath or -rpath-link) 
x86_64-k1om-linux-ld: warning: libirng.so, needed by /usr/local/Intel/parallel_studio_xe_2013_sp1/composer_xe_2015.0.090/compiler/lib/mic/liboffload.so.5, not found (try using -rpath or -rpath-link) 
x86_64-k1om-linux-ld: warning: libintlc.so.5, needed by /usr/local/Intel/parallel_studio_xe_2013_sp1/composer_xe_2015.0.090/compiler/lib/mic/liboffload.so.5, not found (try using -rpath or -rpath-link) 

但是,这些库是存在的,代码是编译+链接和可执行文件。使用英特尔C++编译器。

+0

“他们存在”。也许。链接程序找不到它们。通过使用-rpath-link来告诉它们在哪里。 – 2014-10-30 14:09:04

+0

@CaptainObvlious不,这是一个完全不同的问题。 – 2014-10-30 17:27:56

+0

@ n.m。 CV缩回。 – 2014-10-30 17:39:54

回答

0

你不会说你正在使用什么编译器选项,但是如果你正在编译代码以在协处理器上本地运行(如果你在编译器命令中使用-mmic),那么这些消息是无害的。在协处理器上直接运行程序时,不使用卸载库。我不知道为什么加载器认为它需要这些库,但它们不是必需的,因此它们不链接,因此加载器认为库缺失。没有多少玩图书馆路径会使警告消失。

+0

这是正确的。这些库不是必需的,但我使用卸载,而不是-mmic。 – SScholl 2014-11-27 09:24:11