LWN.net Logo

The Grumpy Editor's guide to (some) development distributions

The Grumpy Editor's guide to (some) development distributions

Posted Nov 23, 2007 6:22 UTC (Fri) by leio (subscriber, #41189)
In reply to: The Grumpy Editor's guide to (some) development distributions by iabervon
Parent article: The Grumpy Editor's guide to (some) development distributions

It's not that we wanted to give you a world of pain. It was that we wanted to avoid lots of
pain that is involved in this specific case when two DIFFERENT ABI version of libexpat are on
a system. Library A depends on expat and library B depends on library A and expat - Library A
gets rebuilt and will use libexpat.so.1 version, while library B still uses libexpat.so.0.
User launches an application linking to Library B, both expat versions are mapped in and
providing symbols, things get mixed up between them, enter a world of chaos and random hard to
explain crashes caused by the specific case this library works and is used, which made
preserve_old_lib method usage not a good option as that leads to exactly that chaos crashy
world.

We do not have a mechanism in place to avoid that. Manually it was possible to workaround it
by making a libexpat.so.0 pointing at libexpat.so.1, because then the same library is used by
both library A and B, but in this instance this workaround it worked just for most cases due
to the ABI breakage being small.

And yes, I am one (out of about three or four) persons responsible for the decision on which
route we went with the expat upgrade and I stay by it.


(Log in to post comments)

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