binary compatibility query

Guy Helmer ghelmer at palisadesys.com
Mon May 5 19:48:12 UTC 2008


Carl Shapiro wrote:
> Kris & Julian
>
> Thank you for clarifiying the compatibility situation.  This
> information was exactly what I was looking for.
>
> I have a follow-up question based on this remark...
>
> On 5/5/08, Kris Kennaway <kris at freebsd.org> wrote:
>   
>>  Actually we don't attempt to keep this form of ABI compatibility (running
>> 6.3 binaries on 6.0, for example), because it basically precludes ever
>> adding new functions to libc within a branch, or new syscalls to the kernel.
>>  You are correct that often binaries will not notice these accumulated
>> changes though, or can be carefully constructed to avoid them.
>>     
>
> If my binary only executes system calls indirectly through libc
> interfaces, as far as libc and libm are concerned, are new symbols the
> only thing I need to worry about?
>   
Not necessarily.  For example, the DNS resolver library was updated 
between FreeBSD 6.1 and 6.2 to bind 9's resolver library, resulting in 
the disappearance of the _res symbol in 6.2.  As long as you depend only 
on public interfaces, though, you should be fine.

Guy

-- 
Guy Helmer, Ph.D.
Chief System Architect
Palisade Systems, Inc.



More information about the freebsd-hackers mailing list