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

Re: GCC 3.2 transition



On Sat, Aug 17, 2002 at 08:00:02PM +0300, Panu Kalliokoski wrote:
> I'll throw in my views on the subject:

> (1) If I understand correctly, SONAMEs are not meant to provide any
> other metadata than a reference to the *library's* ABI. Using SONAMEs for
> anything else, like which compiler the library was built with, will most
> probably result in very broken behavior, because the upstream authors
> have little way to ensure that their library with SONAME n will always
> be built with compiler x but their library with SONAME m will always be
> built with compiler y.

But in a very real sense, the compiler used *IS* part of the library's
ABI; if you recompile a C++ library with gcc 3.2 instead of gcc 2.95,
the name of pratically *every* *single* *symbol* will change.  That
rather soundly eliminates any question of compatible ABIs between the two
libraries.

Of course, you may still be right that it's  better to code this
information somewhere other than in the soname itself.  The problem is
that currently, the transition plan doesn't allow for it to be stored
anywhere other than in the package system.

Steve Langasek
postmodern programmer

Attachment: pgpBZly9hdCNW.pgp
Description: PGP signature


Reply to: