我怀疑'libsimint.a‘有链接错误。
Linker messages (if any) follow...
/home/.../simint/lib/libsimint.a(shell.c.o): In function `simint_copy_shell':
shell.c:(.text+0x126): undefined reference to `__intel_ssse3_rep_memcpy'
/home/.../simint/lib/libsimint.a(shell.c.o): In function`simint_normalize_shells':
shell.c:(.text+0x4e3): undefined reference to `__svml_pow4'我尝试了nm命令来解决这个问题:
>> nm libsimint.a |grep __intel_ssse3_rep_memcpy
U __intel_ssse3_rep_memcpy
>> nm libsimint.a |grep simint_copy_shell
0000000000000090 T simint_copy_shell根据我对上面的理解(在nm man的帮助下),在代码中提到了simint_copy_shell函数,但是__intel_ssse3_rep_memcpy没有在编译我们的libsimint的其他库中定义。有人能证实这一点或补充任何澄清吗?谢谢
(我正在使用gcc编译和链接一个大代码,该代码是用icpc编译的,但实际上是用icpc编译的。)
发布于 2017-05-04 02:03:54
U的意思是“未定义的”--对象有对符号的引用,但没有定义
T表示在文本段中全局定义--对象定义并导出符号
手册页(man nm)列出了所有这些类型代码。
https://stackoverflow.com/questions/43766408
复制相似问题