[opensuse-factory] Direct and indirect linkage to shared libraries with ABI changes
Hi, might be slightly off-topic, but I think there might be some people with appropriate knowledge around here. I suffered a crash in inkscape, which is caused by an ABI change in libpoppler. This is caused by the fact that inkscape links to libpoppler(18) directly, but also via libpoppler-glib8. The latter links to libpoppler18 when using the package provided by the original install media or oS12.1::Update, but KDE::Release::49 provides libpoppler-glib8 which links to libpoppler27. Are there any mechanisms in place to avoid such kind of breakage? Regards, Stefan -- Stefan Brüns / Bergstraße 21 / 52062 Aachen phone: +49 241 53809034 mobile: +49 151 50412019 -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
On 30 September 2012 20:41, Stefan Brüns
Hi,
might be slightly off-topic, but I think there might be some people with appropriate knowledge around here.
I suffered a crash in inkscape, which is caused by an ABI change in libpoppler. This is caused by the fact that inkscape links to libpoppler(18) directly, but also via libpoppler-glib8. The latter links to libpoppler18 when using the package provided by the original install media or oS12.1::Update, but KDE::Release::49 provides libpoppler-glib8 which links to libpoppler27.
Are there any mechanisms in place to avoid such kind of breakage?
Symbol versioning -> http://www.akkadia.org/drepper/symbol-versioning You should talk with libpoppler upstream. If they don't want to do it correctly, at least ask them to do it libpng style (version all symbols with the soname). -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
El 30/09/12 16:41, Stefan Brüns escribió:
I suffered a crash in inkscape, which is caused by an ABI change in libpoppler. This is caused by the fact that inkscape links to libpoppler(18) directly, but also via libpoppler-glib8. The latter links to libpoppler18 when using the package provided by the original install media or oS12.1::Update, but KDE::Release::49 provides libpoppler-glib8 which links to libpoppler27.
Are there any mechanisms in place to avoid such kind of breakage?
Other than symbol versioning and increasing the library version number there is not much we can do other than what is already in place (linking with as-needed, no-add-needed, implementing symbol visibility where possible...) It is an uphill battle and really can only by fixed by upstream. -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
participants (3)
-
Cristian Morales Vega
-
Cristian Rodríguez
-
Stefan Brüns