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!
Yes, assuming that the library is built with
libtool, you can remove the version information by adding the-avoid-versionflag to the library’s LDFLAGS.For example, if before there was
libfoo_la_LDFLAGS = -version-info 1:0you would change it tolibfoo_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