Bug 238767 - linker errors on upgrade / provide libraries with different linker names for backward compatibility
Summary: linker errors on upgrade / provide libraries with different linker names for ...
Status: RESOLVED DUPLICATE of bug 238770
Alias: None
Product: SUSE Linux 10.1
Classification: openSUSE
Component: Maintenance (show other bugs)
Version: Final
Hardware: i686 SuSE Linux 10.1
: P5 - None : Major (vote)
Target Milestone: ---
Assignee: E-mail List
QA Contact: E-mail List
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-01-25 15:14 UTC by Elmar Stellnberger
Modified: 2007-01-25 15:34 UTC (History)
0 users

See Also:
Found By: Customer
Services Priority:
Business Priority:
Blocker: ---
Marketing QA Status: ---
IT Deployment: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Elmar Stellnberger 2007-01-25 15:14:27 UTC
It is a permanent problem that several applications will have to be removed on updates due to unresolved dependencies. This could be improved easily by providing different linker versions of the same library instantaneously. Update packages within the same distribution could carry along elder linker versions of the upgraded library. Otherwise I would suggest a 'reduced' installation mode for just installing the dynamic library binaries so that multiple linker versions of the same library can coexist as part of different rpms at the same time.

  Sometimes the package managment system does not recognize that a library update will break a dependency and refrains from removing dependent applications:
> gedit
gedit: error while loading shared libraries: libgailutil.so.17: cannot open shared object file: No such file or directory
elm:~> locate libgailutil.so
/opt/gnome/lib/libgailutil.so
/opt/gnome/lib/libgailutil.so.18
/opt/gnome/lib/libgailutil.so.18.0.1

  In such a case (good luck) I can manually unload libgailutil.so.17:
> cd /
> rpm2cpio /media/dvd/suse/i586/gail-1.8.8-15.i586.rpm|cpio -iv '*.so.*'
> ldconfig
'reduced' installation outside the rpm database

  Sometimes even worse the library interface becomes subject to incompatible changes without assigning a new linker name. So it happened to the set/longjmp functions of /lib/libc.so.6 between SuSE-10.0 and SuSE-10.1. As a consequence of this all Modula-3 related programs crash on startup under SuSE-10.1 instead of returning a linker error. 
example: cvsup-16.1h-175.i586.rpm
see also: Modula-3 Mailing list 11.01.2007
Why is it not called /lib/libc.so.7?
Comment 1 Elmar Stellnberger 2007-01-25 15:34:15 UTC

*** This bug has been marked as a duplicate of bug 238770 ***