刚才我发现*nix系统中的静态库,也就是*.a库,实际上就是由relocatable(即*.o文件)在ar格式下打包而成的存档。
那么Windows系统中的静态库(*.lib文件)是什么格式?
我找到一篇文章 (存档1, 存档2) 解释了*.lib文件的结构。但是我在哪里可以找到“官方”的*.lib文件结构/格式规范?
除了mingw的ar.exe之外,还有没有来自Microsoft的工具可以提取*.lib和*.a文件的可重定位对象(relocatable objects)?
编辑:
我想知道为什么我无法回答这个问题。如果没有官方规范,编译器(更准确地说是‘链接器’)的开发人员如何使用*.LIB文件?