[Top][All Lists]

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

Re: libtool versioning and ABI

From: Bob Friesenhahn
Subject: Re: libtool versioning and ABI
Date: Wed, 5 Aug 2009 17:53:13 -0500 (CDT)

On Thu, 6 Aug 2009, Michel Briand wrote:
Personally I've always seen interface as a contract.
A contract between a library writer and library user.

The API is the compile-time contract and the ABI is the run-time contract.

Since it's a contract, ABI changes fall into the contract agreement. So why bother with complex versionning and error-prone version manipulations with substraction

This is supposed to make things easier.

The difficult, and somehow messy, scheme of libtool versioning is
boring and uneasy : developers do not understand this different way
that overlap with the classical, natural and contractual scheme (X.Y.Z
that one can still use with the -release flag) ; and this create
additional work to handle package version (official, classical) in
parallel with libtool -version-info scheme.

The goal is to allow libraries to be updated without needing to rebuild all applications which link against a library with that name. There is also a goal to allow incompatable libraries to live side by side so that applications which need different libraries can live on the same system.

Or I'm completely wrong.... but the documentation lacks some clues
about what is this all about ;)))

Libtool did not invent these issues. Different operating systems provide varying capabilities and methods for dealing with library versions.

Bob Friesenhahn
GraphicsMagick Maintainer,

reply via email to

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