如何在Linux上将多个存档文件转换为一个大存档文件(使用binutils ar和/或GCC)。
我试图做类似的事情ar rcs libbig.a libsmall1.a libsmall2.a,但它不起作用(结果libbig.a为空)。
ar rcs libbig.a libsmall1.a libsmall2.a
libbig.a
刚在我的机器上尝试过,问题似乎是您需要从归档中提取对象,然后再将它们添加到新的归档中:
ar x libsmall1.a ar x libsmall2.a ar rcs libbig.a *.o
像您一样简单地运行ar rcs会生成一个包含两个.a文件的存档,但是工具(例如nm)不愿意深入研究这些文件。