SUSE 11 SP4 wird mit glibc Version 2.11.3 ausgeliefert. Für meine Anwendung benötige ich eine höhere glibc-Version. SUSE 12 wird mit glibc Version 2.19.x ausgeliefert. Ich habe die SUSE 12-Diskette in meinen Rechner geladen und das glibc-2.19-rpm gefunden. Aber wenn ich versuche, es zu installieren, erscheint der folgende Fehler
Preparing... ########################################### [100%]
file /etc/bindresvport.blacklist from install of glibc-2.19-31.9.x86_64 conflicts with file from package glibc-2.11.3-17.84.1.x86_64
file /etc/default/nss from install of glibc-2.19-31.9.x86_64 conflicts with file from package glibc-2.11.3-17.84.1.x86_64
file /etc/gai.conf from install of glibc-2.19-31.9.x86_64 conflicts with file from package glibc-2.11.3-17.84.1.x86_64
file /etc/ld.so.conf from install of glibc-2.19-31.9.x86_64 conflicts with file from package glibc-2.11.3-17.84.1.x86_64
file /etc/rpc from install of glibc-2.19-31.9.x86_64 conflicts with file from package glibc-2.11.3-17.84.1.x86_64
file /lib64/ld-linux-x86-64.so.2 from install of glibc-2.19-31.9.x86_64 conflicts with file from package glibc-2.11.3-17.84.1.x86_64
file /lib64/libBrokenLocale.so.1 from install of glibc-2.19-31.9.x86_64 conflicts with file from package glibc-2.11.3-17.84.1.x86_64
file /lib64/libSegFault.so from install of glibc-2.19-31.9.x86_64 conflicts with file from package glibc-2.11.3-17.84.1.x86_64
file /lib64/libanl.so.1 from install of glibc-2.19-31.9.x86_64 conflicts with file from package glibc-2.11.3-17.84.1.x86_64
file /lib64/libc.so.6 from install of glibc-2.19-31.9.x86_64 conflicts with file from package glibc-2.11.3-17.84.1.x86_64
file /lib64/libcidn.so.1 from install of glibc-2.19-31.9.x86_64 conflicts with file from package glibc-2.11.3-17.84.1.x86_64
file /lib64/libcrypt.so.1 from install of glibc-2.19-31.9.x86_64 conflicts with file from package glibc-2.11.3-17.84.1.x86_64
file /lib64/libdl.so.2 from install of glibc-2.19-31.9.x86_64 conflicts with file from package glibc-2.11.3-17.84.1.x86_64
file /lib64/libm.so.6 from install of glibc-2.19-31.9.x86_64 conflicts with file from package glibc-2.11.3-17.84.1.x86_64
file /lib64/libnsl.so.1 from install of glibc-2.19-31.9.x86_64 conflicts with file from package glibc-2.11.3-17.84.1.x86_64
file /lib64/libnss_compat.so.2 from install of glibc-2.19-31.9.x86_64 conflicts with file from package glibc-2.11.3-17.84.1.x86_64
file /lib64/libnss_dns.so.2 from install of glibc-2.19-31.9.x86_64 conflicts with file from package glibc-2.11.3-17.84.1.x86_64
file /lib64/libnss_files.so.2 from install of glibc-2.19-31.9.x86_64 conflicts with file from package glibc-2.11.3-17.84.1.x86_64
file /lib64/libnss_hesiod.so.2 from install of glibc-2.19-31.9.x86_64 conflicts with file from package glibc-2.11.3-17.84.1.x86_64
file /lib64/libnss_nis.so.2 from install of glibc-2.19-31.9.x86_64 conflicts with file from package glibc-2.11.3-17.84.1.x86_64
file /lib64/libnss_nisplus.so.2 from install of glibc-2.19-31.9.x86_64 conflicts with file from package glibc-2.11.3-17.84.1.x86_64
file /lib64/libpthread.so.0 from install of glibc-2.19-31.9.x86_64 conflicts with file from package glibc-2.11.3-17.84.1.x86_64
file /lib64/libresolv.so.2 from install of glibc-2.19-31.9.x86_64 conflicts with file from package glibc-2.11.3-17.84.1.x86_64
file /lib64/librt.so.1 from install of glibc-2.19-31.9.x86_64 conflicts with file from package glibc-2.11.3-17.84.1.x86_64
file /lib64/libthread_db-1.0.so from install of glibc-2.19-31.9.x86_64 conflicts with file from package glibc-2.11.3-17.84.1.x86_64
file /lib64/libutil.so.1 from install of glibc-2.19-31.9.x86_64 conflicts with file from package glibc-2.11.3-17.84.1.x86_64
file /sbin/ldconfig from install of glibc-2.19-31.9.x86_64 conflicts with file from package glibc-2.11.3-17.84.1.x86_64
file /usr/bin/gencat from install of glibc-2.19-31.9.x86_64 conflicts with file from package glibc-2.11.3-17.84.1.x86_64
file /usr/bin/getconf from install of glibc-2.19-31.9.x86_64 conflicts with file from package glibc-2.11.3-17.84.1.x86_64
file /usr/bin/getent from install of glibc-2.19-31.9.x86_64 conflicts with file from package glibc-2.11.3-17.84.1.x86_64
file /usr/bin/iconv from install of glibc-2.19-31.9.x86_64 conflicts with file from package glibc-2.11.3-17.84.1.x86_64
file /usr/bin/ldd from install of glibc-2.19-31.9.x86_64 conflicts with file from package glibc-2.11.3-17.84.1.x86_64
file /usr/bin/locale from install of glibc-2.19-31.9.x86_64 conflicts with file from package glibc-2.11.3-17.84.1.x86_64
file /usr/bin/localedef from install of glibc-2.19-31.9.x86_64 conflicts with file from package glibc-2.11.3-17.84.1.x86_64
file /usr/sbin/glibc_post_upgrade from install of glibc-2.19-31.9.x86_64 conflicts with file from package glibc-2.11.3-17.84.1.x86_64
file /usr/sbin/iconvconfig from install of glibc-2.19-31.9.x86_64 conflicts with file from package glibc-2.11.3-17.84.1.x86_64
file /usr/share/doc/packages/glibc/LICENSES from install of glibc-2.19-31.9.x86_64 conflicts with file from package glibc-2.11.3-17.84.1.x86_64
file /usr/share/man/man1/getconf.1.gz from install of glibc-2.19-31.9.x86_64 conflicts with file from package glibc-2.11.3-17.84.1.x86_64
file /usr/share/man/man5/locale.alias.5.gz from install of glibc-2.19-31.9.x86_64 conflicts with file from package glibc-2.11.3-17.84.1.x86_64
Um diese Konflikte zu lösen, dachte ich daran, die aktuell installierte glibc zu entfernen. Dazu habe ich den folgenden Befehl verwendet.
zypper remove glibc
Dieser Befehl gibt mir die folgende Warnung:
Loading repository data...
Reading installed packages...
Resolving package dependencies...
Problem: This request will break your system!
conflicting requests
Solution 1: ignore the warning of a broken system (requires:glibc)
Solution 2: keep glibc-2.11.3-17.84.1.x86_64
Choose from above solutions by number or cancel [1/2/c] (c):
Wenn ich 1 auswähle, kommt wieder die gleiche Meldung.
Meine Anwendung muss auf SUSE 11 laufen, daher kann ich SUSE 12 nicht verwenden. Gibt es eine Möglichkeit, die glibc zu aktualisieren?
Antwort1
Nein, Sie können glibc nicht aktualisieren. Fast jedes andere Programm auf dem System wird mit einer bestimmten Version von glibc kompiliert und kann kaputtgehen, wenn glibc entfernt oder durch eine andere Version ersetzt wird. Wir alle haben das Ende der 1990er Jahre auf die harte Tour gelernt, als einige Distributionen tatsächlich versuchten, neuere Versionen von glibc auf derselben Distribution auszuliefern, ohne alles neu zu kompilieren.
Ihre Anwendung kann unmöglich sowohl SuSE 11 als auch eine höhere Version von glibc erfordern, als mit SuSE 11 ausgeliefert wurde. Wenn dies der Fall sein sollte, müssen Sie einen Fehlerbericht an die Entwickler senden, da die Anwendung in diesem Zustand offensichtlich nicht verwendbar ist.