如何拆分大型.a 静态库?

How to split large .a static library?

是否可以将大型 .a 文件拆分成多个较小的文件?

我目前遇到的问题是 .a 文件大了好几 GiB,GCC 即使使用标志 -mcmodel=medium.

也会引发错误

使用 binutils 工具 "ar":

ar -x libbig.a

用于从存档中提取对象和

ar -r libsmall.a obj1.o obj2.o obj3.o

用于创建新存档。