glibc2 Or libc.so.5?
You probably know that libc is the library that includes all the standard
C commands (such as printf, read, open, etc.and so on) as well as system
calls. Up until 1997, the only library available was the GNU libc v1,
which since the move to ELF binary format was given major number 5
(/lib/libc.so.5). In 1997, the Free Software Foundation developed GNU libc
v2, with the intention of being cleaner, more portable, and more standard
(POSIX compliant). Under Linux, this version got major number 6, hence
it's called libc6. These two libraries are incompatible -- if a
program is compiled with one libc's headers and stubs, it can't be used
with the other. Some of the distributions (RedHat since version 5, Debian
since 2, SuSE since 6, and Slackware since 4) have moved to libc6 (meaning
that most binaries are compiled with libc6, and the development
environment contains libc6 headers and produces programs that work only
with libc6). The distributions still contain libc5, as well as other
libraries that are linked with libc5, in order to run libc5 binaries,
which will usually be programs where the source is not available (such as
Quake, etc). The problem is that if a user of the system wants to use a
new version of one of thoese libraries, s/he can't compile them,
because only libc6 programs or libraries can be produced.
- Matan Ziv-Av