gcc链接程序时出现undefined reference to""错误

时间:2023-03-08 17:43:06
gcc链接程序时出现undefined reference to""错误

如:: undefined reference to ‘mq_unlink',意思是指函数mq_unlink没有定义。

可以使用如下步骤找到该函数所在的库:

1)、查找哪些库包含了或使用了该函数:
grep -r "函数名(如mq_unlink)" [目录]

2)、分析库文件:
nm -s 库文件名 | grep "函数名(如mq_unlink)"
或:
objdump -t 库文件名 | grep "函数名(如mq_unlink)"

在出现的提示中,会有符号T或U,以下是个人理解:
T: 该函数在该库有被实现。
U:该函数在该库中是被调用的关系,它是在其它库中实现的。