On Mar 3, 2011, at 3:09 PM, Mark Hatle wrote: > On 3/3/11 2:00 PM, Jeff Johnson wrote: >> >> On Mar 3, 2011, at 2:54 PM, Mark Hatle wrote: >> >>> On 3/3/11 1:44 PM, Jeff Johnson wrote: >>>> Hmmm ... I'l try, but I'll bet that both >>>> beecrypt and syck are external in this bug report. >>>> >>> >>> (See above, it's internal) >> >> If its internal, then BeeCrypt/syck are in -lrpmmisc and >> the fix needs to be spun slightly differently. > > My understanding is that rpmmisc has a reference to the libbeecrypt.so, but it > doesn't contain a copy of it. It's this referencing that is breaking on newer
Not my understanding of what SHOULD be happening (but I fail to have a box running @rpm code atm). I'm expecting (and the misc/librpmmisc.vers loader maps show this) that internal libraries are bundled in their entirety into -lrpmmisc, and external libraries are added through DT_NEEDED. There's a number of difficulties, largely from trying to please everyone, so I('m not suprised at breakage (and am perfectly willing to do the quick-and-dirty as in the patch. As indicated, been there before). > systems. If you don't include both the reference and implementation when > linking the final executable, newer versions of the linker will intentionally > fail to link. (There is an --as-needed flag that can be added to the link > line.. this will revert the linker behavior to the old way of bringing in > libraries "as needed" based on run-time references.) > Yes --as-needed is one of the additional linkage elements that causes everything to break all over again again. But RSE's design goal is perfectly sound and crisply KISS even if subtle. I know the issue ... will get a fix in place, as likely as not by just applying the patch. Life's too short to wrestle with --as-needed. Thanks for the additional info. ______________________________________________________________________ RPM Package Manager http://rpm5.org Developer Communication List rpm-devel@rpm5.org