This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: Help: GOLD unable to find logf() in libm.so when sysroot is enabled
- From: Nick Clifton <nickc at redhat dot com>
- To: Ian Lance Taylor <iant at google dot com>
- Cc: Cary Coutant <ccoutant at gmail dot com>, Binutils <binutils at sourceware dot org>
- Date: Fri, 4 Nov 2016 15:34:57 +0000
- Subject: Re: Help: GOLD unable to find logf() in libm.so when sysroot is enabled
- Authentication-results: sourceware.org; auth=none
- References: <87k2ck6f9o.fsf@redhat.com> <CAKOQZ8zZVfof5E9AutVqcuRcZctfqCGn-nhWscnd0r9E7OkXdQ@mail.gmail.com>
Hi Ian,
> gold only warns about undefined references from shared libraries in
> specific circumstances. See
> Symbol_table::warn_about_undefined_dynobj_symbol in symtab.cc. I
> think that particularly relevant here is that gold does not warn about
> an undefined reference in a shared library that it finds in a "system
> directory", which basically means a directory found in the sysroot.
> I'm guessing that that is somehow the difference between your two
> links. But I don't know why the definition of logf found in libm.so
> is not satisfying the references from the other shared libraries.
> Could there be any versions involved?
No. I checked and the reference and definition are both unversioned.
I did find however that I spoke too soon about this problem not being
fixed in the mainline sources. It seems that somehow the bug is fixed.
I am currently checking to make sure that this is correct and not just
me mucking up the testing again, but using a VM makes the whole process
very slow.
Thanks very much for taking a look at the problem though.
Cheers
Nick