To Require or not to Require?
Adam Jackson
ajax at redhat.com
Fri Aug 12 17:28:59 UTC 2011
On 8/12/11 12:28 PM, Matthew Garrett wrote:
> On Fri, Aug 12, 2011 at 05:25:17PM +0100, Bryn M. Reeves wrote:
>
>> Third party code built against -devel and depending only on the SONAME is fine
>> in this situation as it sticks to the published ABI. In-tree code that plays
>> with non-ABI symbols will break and so may need a stricter dep.
>
> It is in this situation, but there are other situations where depending
> on the SONAME will cause breakage. If libfoo 1.1 adds a new symbol,
> anything built against it may fail to run against libfoo 1.0. But how
> will you know that in advance if all you have in your dependencies is
> the SONAME?
In fairness, this is why rpm elaborates soname dependencies to also
include symbol versions. It's a pity that symbol versions are so
painful to use that really only glibc makes any effort to do it.
Hilariously gcc _does_ let you specify symbol version in a __attribute__
tag, but only on HP/UX on ia64. Thanks for that.
- ajax
More information about the devel
mailing list