如题,使用linux编译程序时,需要静态链接库。
在链接过程也已指定静态库的路径及库名,且链接器能找到指定的库,但会提示库中被调用的函数undefined reference
这是需要检查链接库在链接命令中的位置,要保证依赖该库的中间文件或库在它的前面。
即若一个程序需要liba.a libb.a a.o这三个文件链接生成,libb.a依赖liba.a, a.out 依赖 libb.a 则在命令中顺序应为 a.o libb.a liba.a。这样也许能解决静态链接库undefined reference的错误。
但是出现该错误的原因可能不是只 此一种,仅是出现类似问题的一种参考。
本文介绍了在Linux环境下编译程序时遇到静态链接库undefinedreference错误的问题,并提供了一种解决方案:确保链接命令中依赖库的正确顺序。同时指出这可能只是导致此类错误的原因之一。
1万+

被折叠的 条评论
为什么被折叠?



