This is the mail archive of the
mailing list for the elfutils project.
Re: Symbol versioning (Was: [Bug general/24000] couple of testsuite fails with uclibc library)
- From: Ulf Hermann <ulf dot hermann at qt dot io>
- To: Mark Wielaard <mark at klomp dot org>
- Cc: "elfutils-devel at sourceware dot org" <elfutils-devel at sourceware dot org>
- Date: Tue, 19 Feb 2019 11:30:08 +0000
- Subject: Re: Symbol versioning (Was: [Bug general/24000] couple of testsuite fails with uclibc library)
- Accept-language: en-US
- References: <email@example.com/bugzilla/> <bug-24000-10460-Ewx5eH04zA@http.sourceware.org/bugzilla/> <firstname.lastname@example.org> <20190219104832.GA9572@wildebeest.org>
> The problem is that without it every elfutils release would (possibly)
> break the ABI between the shared libraries and programs using them.
> And we don't have/use a different mechanism to indicate symbols/ABI
> changed. How do you prevent things breaking when upgrading the
> elfutils libraries?
I ship the version of elfutils the application links against with the
application. That is common practice on windows (and also on e.g.
macOS). The concept of package management only exist on some platforms
and only in this context symbol versioning makes sense. Even on linux,
with things like flatpak, binary compatibility between different
versions of a library becomes less important.