库 | 链接静态库

1.链接自己编译的静态库的时候报错:

提示:无法读取符号 : Archive has no index; run ranlib to add one。

两种解决方法:
a.直接使用 ranlib libxxx.a;
b.静态库编译的时候去掉 gcc-linux-strip libxxx.a 的操作;

2.同时链接两个静态库,两个静态库存在依赖关系(libaaa.a 依赖 libbbb.a)

提示:对‘xxx函数’未定义的引用。

解决方法:
由于libaaa.a 依赖 libbbb.a,在引用库的时候,需要将 libaaa.a 放在 libbbb.a 的前面,如 -aaa -bbb 即可。

原文地址:https://www.cnblogs.com/CristL/p/15243553.html