2012-08-16 59 views
6

我需要建立一個配置了自動工具的庫。通常的configure && make && make install步驟會產生版本化的共享庫,如libfoo.so.x.x是否可以修改configure.ac或Makefile.am(並且當然跟進autoreconf),以便構建未版本化的lib。GNU Autotools:重建沒有版本信息

謝謝!

回答

10

是的,假設庫的內部版本號爲libtool,您可以通過將-avoid-version標誌添加到庫的LDFLAGS來刪除版本信息。

例如,如果之前有 libfoo_la_LDFLAGS = -version-info 1:0您可以將其更改爲libfoo_la_LDFLAGS = -avoid-version。之後,您將重新生成並重新運行配置(autoreconf -vfi & & ./configure)並重建。

僅僅刪除-version-info ...是不夠的,因爲libtool會生成版本信息爲0.0.0的庫。

請參閱libtool手冊瞭解更多信息:http://www.gnu.org/software/libtool/manual/html_node/Link-mode.html