[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Shared Libraries and naming conventions



I noticed the post on this topic linked to on the LinuxBase site
(http://www.debian.org/Lists-Archives/lsb-spec-9905/msg00011.html), and I
thought I'd post a comment, although the mailing lists have been silent on
this topic for a while (the original thread seems to have degenerated into
a flamewar on glibc licensing).

I just wanted to a comment that a careful description of the versioning
system used by a large portion of Linux shared libraries already exists,
in the GNU libtool manual.  See:

	http://www.gnu.org/software/libtool/manual.html#Versioning

Nota bene: GNU libtool version numbers are specified as
<CURRENT>:<REVISION>:<AGE>, but they are stored under Linux as
libfoo.so.<CURRENT>.<AGE>.<REVISION> (linked to by libfoo.so.<CURRENT> and
libfoo.so).  See above for a description of the <CURRENT> etcetera version
number meanings.

For those of you who don't know, libtool is a portable way to create
shared libraries (see http://www.gnu.org/software/libtool/libtool.html),
and is used by the standard GNU autoconf/automake development utilities.  

Since this is the existing practice, it makes sense to base the standard
on it, to the extent that a standard is needed.  It's certainly important
to reference it, in any case.  (Some packages use other version numbering
schemes, of course, but it often tends to be based on release numbers and
is not, I think, as well thought-out as libtool's scheme based on API
compatibility.)

Steven


Reply to: