Upgrade glibc version in SUSE 11

glibcsles

SUSE 11 SP4 comes with glibc version 2.11.3. For my application I require glibc version higher than that. SUSE 12 comes with glibc version 2.19.x. I loaded SUSE 12 disk in my machine and found the glibc-2.19 rpm. But when I try to install it gives the below 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

So, to resolve these conflicts, I thought of removing the currently installed glibc. I used the below command to do that.

zypper remove glibc

This commands gives me the below warning:

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):

If I select 1, again the same message comes.

My application needs to be on SUSE 11, so I can't use SUSE 12. Is there any way to upgrade the glibc ?

Best Answer

No, you cannot upgrade glibc. Almost every other program on the system is compiled against a specific version of glibc, and may break if glibc is removed or replaced with a different version. We all learned this the hard way in the late 1990s when some distributions actually did try to ship newer versions of glibc on the same distro without recompiling everything.

Your application cannot possibly require both SuSE 11 and a higher version of glibc than SuSE 11 shipped with. If it supposedly does, then you need to file a bug report with its developers, as it is obviously not usable in that state.

Related Topic