我想知道有什么方法(如果可能的话),在编译后更改 Unix 中 *.a 文件的版本信息。 我知道如何在 Windows 中处理 Dll 文件 - 但不知道如何在 Unix 中管理它。
谢谢大家!
最佳答案
静态库只是 .o 文件的存档 - 它们本身不会嵌入版本,除非您的代码以某种方式发布包含版本信息的符号。
喜欢:
int libFoo_version = 0x01000000;
或者你可以使用
char* libFoo_version = "1.0";
然后使用类似 strings libFoo.a | grep libFoo_version
的内容命令与 sed
结合使用更改版本信息。
另一种选择是在存档中嵌入一个空文件,其名称包含版本信息。 YMMV
关于linux - 如何更改*.a文件编译后的版本信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2317037/