gcc/g++链接时.o文件及库的顺序问题

折腾gcc/g++链接时.o文件及库的顺序问题

链接静态库的顺序问题

GCC 编译使用动态链接库和静态链接库--及先后顺序----及环境变量设置总结

 

交叉编译静态库的链接顺序

问题:

1、当lib1.a lib2.a中存在相同的函数test,均不是static的。main.c中使用到test函数。在编译链接时如果两个库都链接,但是库的链接顺序不一样,在最终运行的结果也不一样。

2、链接后最终的可执行程序会执行第一个库中test函数实现

3、如果将其中的一个库中的test函数的作用域修改为static,则不管链接顺序如何,最终会链接非static的那个库实现

aa

原文地址:https://www.cnblogs.com/jingzhishen/p/6025857.html