0

当交叉编译某些项目(尤其是使用 libtool 来设置构建的项目)作为基于 unix 的系统的共享库时,输出通常是一个 *.so.xyz 文件,其中包含共享库的所有版本信息标准。

不幸的是,一些平台,特别是 BlackBerry 和 Android,不能很好地处理应用程序包中的 soname 版本控制和符号链接。

理想情况下,您可以告诉构建工具在没有版本控制的情况下构建共享库,但我发现这是一项非常困难且耗时的任务。对于某些项目,我根本不知道如何防止版本控制。在项目构建脚本中使用变量也可能会默默地破坏某些东西或带来意外行为。

有没有办法在一组共享对象二进制文件构建后摆脱它们的所有版本控制信息?

4

1 回答 1

0

Yes, you can disable it by adding -avoid-version to <your library>_LDFLAGS as described here: GNU Autotools: rebuild without version info

于 2013-11-08T19:10:37.570 回答