Re: Static call dependency on libelf version?
From: Josh Poimboeuf
Date: Tue Sep 15 2020 - 19:00:54 EST
On Tue, Sep 15, 2020 at 04:38:02PM +0200, Mark Wielaard wrote:
> Hi Josh,
>
> On Tue, 2020-09-15 at 09:17 -0500, Josh Poimboeuf wrote:
> > On Tue, Sep 15, 2020 at 01:24:17PM +0200, Mark Wielaard wrote:
> > > But all this is for ancient versions of elfutils libelf. So it is hard
> > > to say and my memory might be failing. If someone can confirm 0.158
> > > (which is 6 years old) works fine I would pick that as minimum version,
> > > otherwise simply go with 0.168 which is 4 years old and should be on
> > > most systems by now.
> >
> > I just discovered elf_version(), I assume that would allow us to check
> > and enforce the libelf version?
>
> No, sorry. That is for the ELF file format version, which is and has
> always been version 1 (and I suspect it will be for the next 20
> years).
Oh, right :-)
> There is /usr/include/elfutils/version.h which provides a
> _ELFUTILS_PREREQ(major, minor) macro if you need something during
> compile time.
Nice, I'll try that.
> Note that in theory libelf is a generic library (there are variants for
> Solaris and BSD with which we try to be [source] compatible), but the
> only actively maintained version is the elfutils one.
Yeah, we've occasionally had users using another variant of the library
which is 10+ years old. Not surprisingly it didn't work well.
--
Josh