This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: libctf linking against different libbfd builds, but using the same soname
On 22 Nov 2019, Alan Modra said:
> On Fri, Nov 22, 2019 at 05:58:00PM +0000, Nick Alcock wrote:
>> The only thing we use libbfd for in libctf is to read .ctf sections out
>> of BFD-readable objects, and tie them up with likely-relevant string and
>> symbol tables in the enclosing object. As long as the native BFD can
>> read the relevant objects, nothing bad would happen if you used the
>> native one rather than the cross one.
>
> The thing to keep in mind is that we make no promise to keep the
> libbfd ABI stable from one day to the next. It's also quite easy to
> break compatibility between builds using the same source, just by
> configuring a little differently, although BFD_INIT_MAGIC helps with
> that.
True -- but in that case, the libbfd soname does change (because it
changes constantly). Unless someone is quite unlucky and installs libctf
and a libbfd from a different, incompatible binutils built on the *same
day*... I mean, yes, it's possible, but is it really plausible?
I mean I *could* fix this by linking libctf with libbfd.a: since we
don't export any of its symbols this would work fine, but it would be a
bit bloated. (OK, probably very bloated). Doing that feels... wrong. But
maybe it's better than the alternative?
--
NULL && (void)