[Top][All Lists]

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

Re: library versioning problem

From: Lucien GENTIS
Subject: Re: library versioning problem
Date: Sat, 31 Mar 2007 14:26:19 +0200
User-agent: Mozilla/5.0 (X11; U; Linux i686; fr; rv:1.7.8) Gecko/20070113 Debian/1.7.8-1sarge10

Gary V. Vaughan a écrit :

Hi Lucien,

On 30 Mar 2007, at 16:59, Lucien GENTIS wrote:

Gary V. Vaughan a écrit :

On 29 Mar 2007, at 15:48, Lucien GENTIS wrote:

Gary V. Vaughan a écrit :

On 26 Mar 2007, at 12:47, address@hidden wrote:

Quoting "Gary V. Vaughan" <address@hidden>:

On 25 Mar 2007, at 16:50, Lucien GENTIS wrote:

That means:
CURRENT is replaced by CURRENT - AGE      (69 - 38 = 31)
REVISION is replaced by AGE
AGE is replaced by REVISION

http://www.gnu.org/software/libtool/manual.html#Libtool- versioning

First thanks for your answer

No problem.

I've already red this doc, but it doesn't explain why current, revision and age number are changed

Sure it does.

You are confusing the *library* version with the *interface* version. C:R:A allows a developer to describe the interface version and compatibility details for their library. The soname and filename of the eventual library is an implementation detail that depends how *library* versions work on the particular OS you build on -- and will be different on Linux vs Windows vs
AIX vs HPUX etc

So under Linux, if Major=C-A, Minor=A, Micro=R, say I develope a library starting with 0.0.0: According paragraph 6.3 of http://www.gnu.org/software/libtool/ manual.html,
Interfaces and library versions progress as follow:


but Changing an interface modifies library version from 0.3.1 to 1.3.0 and removing an interface modifies library version from 2.3.0 to 6.0.0

Aren't library versions increasing a little too fast ?

Too fast for what?  Are you worried about running out of numbers? ;-)

I just thought about publishing "mylib-85.0.0" (seems not very serious ;-))

Are you updating C:R:A every time you change/remove/add an interface? In
that case you will get through numbers *very* quickly unless your API is
extremely stable. The libtool documentation recommends that you only update
C:R:A just before each release.


Yes, I fully agree with you Gary.

When and only when one decides his library has evolved enough and all bugs were corrected (almost all !), version number can be increased and library may be published. So every library publishing
presents a normal version progression.

Many thanks for your explanations Gary.

And yet, back to coding :-))


reply via email to

[Prev in Thread] Current Thread [Next in Thread]