Libtool now unconditional in INN CURRENT

Russ Allbery rra at stanford.edu
Wed Jun 13 03:46:18 UTC 2012


Julien ÉLIE <julien at trigofacile.com> writes:

> Let's take an example with libstorage.
> The storage/libstorage.la file generated by libtool mentions:

> dlname='libstorage.so.2'
> library_names='libstorage.so.2.0.0 libstorage.so.2 libstorage.so'

> If I change these lines to:

> dlname='libstorage.so'
> library_names='libstorage.so.2.0.0 libstorage.so'

> then only this symlink is created:

> lrwxrwxrwx  1 root root   19 2012-06-12 22:18 libstorage.so -> libstorage.so.2.0.0*

Yes, but this is means that the SONAME doesn't match the file name, so you
lose all the versioning properties of shared libraries (you can't install
version 2 and version 3 at the same time, programs don't find the correct
version, and so forth).

>> Updating our shared library versions properly on any change would also
>> fix this, although that's a lot of updates if we were going to try to
>> keep the versions accurate for snapshots.

> It could also become painful during development, when building and
> testing changes for 2.6.0 for instance.

Right.  Although I'm not sure how often we change the library code.

If we did update the version the way that we're theoretically supposed to,
there would be no need to make backups, since the new version wouldn't
overwrite the old library, but ldconfig would automatically link to the
latest version.  The versioning would in essence force creation of backups
only when the library code had actually changed.

-- 
Russ Allbery (rra at stanford.edu)             <http://www.eyrie.org/~eagle/>

    Please send questions to the list rather than mailing me directly.
     <http://www.eyrie.org/~eagle/faqs/questions.html> explains why.


More information about the inn-workers mailing list