Re: -Wl,--as-needed considered possibly harmful
On Wed, Jan 02, 2008 at 11:53:16AM +0000, Neil Williams wrote:
> > Because *all* libraries which have other libs as reverse-dependencies should
> > implement symbol versioning, precisely as the shortest path for reliably and
> > permanently addressing the various issues we're discussing.
> > It *is* libbaz's fault for having an ABI-breaking change. And based on
> > history, it is only reasonable to assume all such libraries are guilty, and
> > demand that they use symbol versioning in anticipation of such future ABI
> > changes.
> OK, I'm doing this upstream for one of my packages - following threads from:
> That gave me a basic versioning addition to the library, a diff of
> objdump -p shows:
> +Version definitions:
> +1 0x01 0x06077991 libqof.so.1
> +2 0x00 0x0f307023 LIBQOF_0.7.3
> (I'm not putting the history of the symbols into the file at this stage
> - no new symbols are added in the new version so the libqof.ver file is
> simply marking all as global. I could add historical data - is there any
> benefit in that?)
No, I don't think there's any benefit in adding the historical data after
> That's upstream covered, it appears I also need debian/libqof1.symbols
> from http://qa.debian.org/cgi-bin/mole/seedsymbols ? If I had done
> symbol versioning correctly upstream, shouldn't dpkg-shlibdeps be able
> to create the necessary data itself? I don't provide a .shlib file of
> my own at this stage.
The symbols files are orthogonal to symbol versioning. Symbols files are
basically "per-function shlibs", which are applicable even to libs that
don't use symbol versioning; their main benefit is for libraries which make
backwards-compatible ABI changes.
Steve Langasek Give me a lever long enough and a Free OS
Debian Developer to set it on, and I can move the world.
Ubuntu Developer http://www.debian.org/