[plug] old binaries

Anthony J. Breeds-Taurima tony at cantech.net.au
Tue Nov 6 10:55:20 WST 2001


On Tue, 6 Nov 2001, Rob Dunne wrote:

> Hi Anthony,
> 
> 
> Anthony J. Breeds-Taurima writes:
>  > On Tue, 6 Nov 2001, Rob Dunne wrote:
>  > 
>  > > On a broader note -- why doesnt RH7.1 simply support older binaries?
>  > > It hardly seems reasonable that upgrade a system and then find that 
>  > > programs in /usr/local/bin no longer work.
> ..
>  > have it run.  Apps compiled on older versions living in /usr/local will 
>  > correctly function.

Yeah, sorry I was talking abou the layout of the binary NOT ilinked libraries
They are seperate issues.

I got talking about compilers beacuse I misread:

----------- Original email 
how do I get it to run? The compatibility rpm (sorry I dont
have its name here) in RH7.1 seems to be for compiling 
stuff to run on a RH6.2 system -- but how do I get a RH6.2
binary to run on a newer system?
-----------

The reason "The compatibility rpm (...) in RH7.1 seems to be for compiling"
is beacuse it IS.  see all my rantings about compiler versions etc etc.

 
> But this is just what did not happen! I tried to run the app
> and it bombed. I used "strings" on it and found references to
> /lib/libc.so.5 etc -- and started looking for the missing libraries.

<tip>
ldd file will tell you what (if any) libraries an app needs.
ie
~$ ldd `which pine`
        libldap.so.1 => /usr/lib/libldap.so.1 (0x4001b000)
        liblber.so.1 => /usr/lib/liblber.so.1 (0x40030000)
        libresolv.so.2 => /lib/libresolv.so.2 (0x40035000)
        libncurses.so.4 => /usr/lib/libncurses.so.4 (0x40044000)
        libpam.so.0 => /lib/libpam.so.0 (0x40087000)
        libdl.so.2 => /lib/libdl.so.2 (0x4008f000)
        libgssapi_krb5.so.2 => /usr/kerberos/lib/libgssapi_krb5.so.2 (0x40093000)
        libkrb5.so.2 => /usr/kerberos/lib/libkrb5.so.2 (0x400ad000)
        libk5crypto.so.2 => /usr/kerberos/lib/libk5crypto.so.2 (0x4011c000)
        libcom_err.so.3 => /usr/kerberos/lib/libcom_err.so.3 (0x40138000)
        libssl.so.0 => /usr/lib/libssl.so.0 (0x4013c000)
        libcrypto.so.0 => /usr/lib/libcrypto.so.0 (0x4016e000)
        libc.so.6 => /lib/libc.so.6 (0x40240000)
        /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
nicer than strings.
</tip>
 
> Have I missed something?

Your problem is beacse your old app is using an old libary (I'm sure at the
time it was built lib5 was the latest/greatest tho).

RedHat 4.X only knew about libc5 you HAD to install it.
RedHat 5.X installed the compat-lib stuff by default (to ease the transition).
RedHat 6.X installed it if you ticked the devel box during the install.
RedHat 7.X only installs it only if you say tick the "libc-5" support.

libc.5 became "obselete" nearly 4 years ago now.

libc.5.so
libc.6.so (glibc2.0)
libc.6.so (glibc2.1)
libc.6.so (glibc2.2)  Current.

Sorry if I caused undue confusion.

Yours Tony.

/*
 * "The significant problems we face cannot be solved at the 
 * same level of thinking we were at when we created them."
 * --Albert Einstein
 */



More information about the plug mailing list