LWN.net Logo

Day: GNOME OS

Day: GNOME OS

Posted Aug 14, 2012 2:05 UTC (Tue) by paulj (subscriber, #341)
In reply to: Day: GNOME OS by khim
Parent article: Day: GNOME OS

The Linux libc5 to libc6 breakage was not GNU libc being unstable. libc5 was not GNU libc, GNU had nothing to do with its development. Libc5 - "Linux libc" - was a separate code-base (an old fork of a much earlier GNU libc, apparently).


(Log in to post comments)

Day: GNOME OS

Posted Aug 14, 2012 17:41 UTC (Tue) by khim (subscriber, #9252) [Link]

You nitpicking is correct - but pointless. Many former libc5 developers are GLibC 2.x developers today. And the fact that they decided to pick up the GLibC 2.0 to use it as Linux libc (instead of trying to stabilize libc5) proves my point: they broke compatibility at least four times in a short while when Linux libc was developed as a fork but then they decided that they want to stabilize ABI and they were able to do this with a switch to GLibC.

Stable ABI is less of a technical phenomenon and more of a social phenomenon: if you want to have stable ABI then you must plan for the stable ABI and if you don't plan for the stable ABI then usually ABI can not be safely frozen.

Good example are Linux kernel developers: they are often accuses in various vices because they don't keep internal Linux ABI stable and usually people say that this happens because these guys just don't know how to program in general and how to program stable ABI in particular but these critics often forget that these same guys are designing and supporting kernel<->userspace ABI which may be not perfect yet is quite stable.

If you want to change a library and stabilize it's ABI then often the only sensible way to do it is to break it's ABI "just one last time".

Copyright © 2013, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds