When I upgraded my Linux® i386 system
from libc5 to libc6 (also known as
GNU libc 2)
I needed, for compatibility purposes, a lot of libraries linked against
libc5; so I made a set of rpm
compatibility packages for my own use.
As a lot of people asked me for them and another lot have had upgrade
problems I put them here so anyone can use them too.
They are built from the Red Hat 4.2 libs,
I just moved the libs to /usr/i486-linuxlibc5/lib, and made binary rpm
package with nly the libs; with a new name and files in a new path to
avoid conflicts.
If you want the sources just get the original *.src.rpm from RH 4.2 and
compile it yourself. I'm not willing to provide *.src.rpm packages for
libc5 on libc6, my purpose is not that; it is only to provide an
easy way to make the transition from libc5 to libc6. If you are
going to compile you can just do the rpm packages yourself; or better yet,
compile and link your old programas against libc6.
Note also that I will remove this page in a near future, when the last
remaining libc5 distributiosn will switch to libc6.
That is very easy, just add /usr/i486-linuxlibc5/lib to the file /etc/ld.so.conf and rerun ldconfig; then install any package you need.
Run rpm -q --whatrequires libc.so.5, then for each one of those
packages run rpm -q --requires package-name | grep lib.*.so.
You need a libc5 version for each one of those libs.
Run rpm -q --whatrequires `rpm -q --provides foobar-libc5 | grep lib.*.so`; you now have a list of packages that use the libs that foobar-libc5 provide; but does they use the libc6 or the libc5 one ? Run rpm -q --requires package-name | grep libc.so to know. If none of the packages yields libc.so.5 then you can safely remove foobar-libc5.
Yes, you can install a package libc5-devel that includes all the needed things to make libc5 executables on a libc6 system (you need to also install libc5 libraries to link to of course).
You can drop me an email, or look at my web page. Here is my PGP public key.
Yes, the ldd that comes with glibc is a simple shell script that
only handles glibc binaries, if you have libc5 or a.out it is useless.
You need to either get the ld.so soruces, recompile them and
get the ldd from there; or you can download a precompiled
ldd from here, uncompress it, make it
executable, and copy it in /usr/bin/ldd (don't forgot to reinstall
it after each upgrade of glibc)
Then you will have an ldd that will correctly report the right
info for all Linux executables: glibc, libc5 and even a.out.
| db-libc5-1.85-3.i386.rpm (33200) | DB provides routines for creating simple database indexes. It is used by many applications, including Python and Perl, so this should be installed on all systems. This is version 1 only. It should be used for building apps that require v1 support only. All new apps should be written to use version 2 from glibc. |
|---|---|
| gdbm-libc5-1.7.3-1.i386.rpm (13029) | This is a database indexing library. It is useful for those who need to write C applications and need access to a simple and efficient database or build C applications which use it. |
| gpm-libc5-1.12-1.i386.rpm (10171) | GPM adds mouse support to text-based Linux applications such as emacs, Midnight Commander, and more. It also provides console cut-and-paste operations using the mouse. Includes a program to allow pop-up menus to appear at the click of a mouse button. |
| libpng-libc5-0.89c-1.i386.rpm (39912) | The PNG library is a collection of routines used to crate and manipulate PNG format graphics files. The PNG format was designed as a replacement for GIF, with many improvements and extensions. |
| libtermcap-libc5-2.0.8-2.i386.rpm (7465) | This is the library for accessing the termcap database. libc5 version |
| p2c-libc5-1.20-1.i386.rpm (8092) | p2c is the Pascal to C translation system. It is used to convert Pascal source code into C source code so that it can be compiled using a standard C compiler (such as gcc). |
| readline-libc5-2.0-1.i386.rpm (63262) | The "readline" library will read a line from the terminal and return it, allowing the user to edit the line with the standard emacs editing keys. It allows the programmer to give the user an easier-to-use and more intuitive interface. |
| slang-libc5-0.99.33-3.i386.rpm (83446) | Slang (pronounced ``sssslang'') is a powerful stack based interpreter that supports a C-like syntax. It has been designed from the beginning to be easily embedded into a program to make it extensible. Slang also provides a way to quickly develop and debug the application embedding it in a safe and efficient manner. Since slang resembles C, it is easy to recode slang procedures in C if the need arises. |
| svgalib-libc5-1.2.10-1.i386.rpm (149672) | VGAlib is a library which allows applications to use full screen graphics on a variety of hardware platforms. Many games and utilities are avaiable which take advantage of SVGAlib for graphics access, as it is more suitable for machines with little memory then X Windows is. |
| tcl-libc5-7.6pl2-1.i386.rpm (126517) | TCL is a simple scripting language that is designed to be embedded in other applications. This package includes tclsh, a simple example of a tcl application. TCL is very popular for writing small graphical applications because of the TK widget set which is closely tied to it. |
| tclx-libc5-7.6.0rel-1.i386.rpm (67229) | TclX is a set of extensions to make it more suitable for common Unix programming tasks. It adds or enhances support for files, network access, debugging, math, lists, and message catalogs. It can be used with both tcl and tcl/tk applications. |
| xpm-libc5-3.4h-1.i386.rpm (30167) | Allows applications to display bitmapped pictures. Used by a large number of popular X Windows programs to enhance the user interface. |
| zlib-libc5-1.0.4-1.i386.rpm (24760) | The 'zlib' compression library provides in-memory compression and decompression functions, including integrity checks of the uncompressed data. This version of the library supports only one compression method (deflation) but other algorithms may be added later and will have the same stream interface. This library is used by a number of different system programs. |