问题
I need to build a lib that is configured with autotools. The usual configure && make && make install steps produce versioned shared lib, something like libfoo.so.x.x Is it possible to modify configure.ac or Makefile.am (and of course follow up with autoreconf ) so that un-versioned lib is build.
Thank you!
回答1:
Yes, assuming that the library is built with libtool, you can remove the version information by adding the -avoid-version flag to the library's LDFLAGS.
For example, if before there was
libfoo_la_LDFLAGS = -version-info 1:0 you would change it to libfoo_la_LDFLAGS = -avoid-version. After this, you'd regenerate and rerun configure (autoreconf -vfi && ./configure) and rebuild.
Simply removing -version-info ... isn't sufficient, since libtool will then generate a library with version info 0.0.0.
See the libtool manual for more information: http://www.gnu.org/software/libtool/manual/html_node/Link-mode.html
来源:https://stackoverflow.com/questions/11989255/gnu-autotools-rebuild-without-version-info