SUSE 11 SP4 viene con la versión glibc 2.11.3. Para mi aplicación necesito una versión de glibc superior a esa. SUSE 12 viene con la versión glibc 2.19.x. Cargué el disco SUSE 12 en mi máquina y encontré glibc-2.19 rpm. Pero cuando intento instalarlo me da el siguiente error
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
Entonces, para resolver estos conflictos, pensé en eliminar el glibc actualmente instalado. Utilicé el siguiente comando para hacer eso.
zypper remove glibc
Este comando me da la siguiente advertencia:
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):
Si selecciono 1, nuevamente aparece el mismo mensaje.
Mi aplicación debe estar en SUSE 11, por lo que no puedo usar SUSE 12. ¿Hay alguna forma de actualizar glibc?
Respuesta1
No, no puedes actualizar glibc. Casi todos los demás programas del sistema se compilan con una versión específica de glibc y pueden fallar si glibc se elimina o se reemplaza con una versión diferente. Todos aprendimos esto de la manera más difícil a fines de la década de 1990, cuando algunas distribuciones intentaron enviar versiones más nuevas de glibc en la misma distribución sin recompilar todo.
Es posible que su aplicación no requiera tanto SuSE 11 como una versión superior de glibc a la que incluye SuSE 11. Si supuestamente es así, entonces debes presentar un informe de error a sus desarrolladores, ya que obviamente no se puede utilizar en ese estado.