3

In the enterprise class of Linux OS's,

  • SLES 11.4 uses glibc 2.11
  • SLES 12.3 I think uses glibc 2.19
  • RHEL 6.10 uses glibc 2.12
  • RHEL 7.6 uses glibc 2.17
  • source for glibc is currently at 2.29
  • I was provided executable code from a Linux system having glibc 2.14 a while back, cannot run it on SLES 11.

From all reading it seems that glibc cannot be manually updated on a system; the only way to version up with it is to jump to a complete newer version of a Linux operating system. Is this true?

While there has always been backward-compatibility, there is not forward compatibility which brings me to...

I go to RHEL 7.6 with glibc 2.17 which is currently the latest, if someone currently uses SLES 12 with glibc 2.19 and gives me executable code what do I do? Same question if they use some Linux in not too distant future with some later version of glibc? Is there a way around this problem, whether it is on the receiving side having an older glibc or on the providing side having newer glibc? What I also find a huge part of the problem is the statement by the glibc website: GNU C Library releases every 6 months.

1

2 Answers 2

0

There are versioned symbols within the library. If the new code hits one of the versioned symbols, and that version is newer than anything in your libc, you’ll not be able to run

Can they build static?

0

Distributions ship with older/newer glibc versions depending in the stability wanted.

From all reading it seems that glibc cannot be manually updated on a system; the only way to version up with it is to jump to a complete newer version of a Linux operating system. Is this true?

No. glibc is updated every time your package manager finds a new version of glibc. The main file is /lib/libc.so.6. Which is the dynamic library programs are linked to (so they can run C functions included in the C standard library).

Although you can update glibc manually by compiling a desired version of glib and copying the resulting libc.so.6 to lib, this isn't recommended because the binaries could complain at the moment of execution, and because newer versions of glibc haven't been tested by the distribution's package maintainers. So you can expect an unstable system.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .