[oe] Missing GLIBC_<version> tags on binaries
Phil Blundell
philb at gnu.org
Tue Mar 1 11:35:08 UTC 2011
On Mon, 2011-02-28 at 19:33 +0000, Otavio Salvador wrote:
> On Mon, Feb 28, 2011 at 17:17, Phil Blundell <philb at gnu.org> wrote:
> ...
> > That's definitely not a patch that you ought to check in, though. For
> > wider consumption I guess there ought to be some kind of knob that
> > DISTROs can tweak to select the linker of their choice. As far as I
> > know there isn't any such mechanism at present.
>
> One interesting way to "fix" the issue is to explicitly link against
> -lpthread however it seems *wrong*.
>
> It seems to be a gcc bug since -pthread is suppose to handle all the
> needed background for it to work and seems to be doing it wrong.
I just tried linking xfreerdp by hand with gold and the resulting binary
seemed to come out fine. So I think this is indeed a bug in GNU ld.
It does seem to be sensitive to the order in which things are mentioned
in the command line: if you put -lpthread first then GNU ld gets it
right. But if -lpthread is at the end then it seems to fail to pick up
the versioning information for symbols which are also mentioned (even as
SHT_UNDEF) in other objects. Clearly that can't be the whole story
though because if it was that simple then it would be failing with
everything. I guess you need to either debug this further or switch to
using gold for your own builds.
p.
More information about the Openembedded-devel
mailing list