[KLUG Members] Migration from Redhat 7 to turbolinux 6
Adam Tauno Williams
members@kalamazoolinux.org
Wed, 21 Nov 2001 15:29:14 -0500 (EST)
>>>>You'll have to compile it on the TurboLinux box or download a
>>>>binary package that was compiled for a similar release of TurboLinux.
>>>Yeah,I did that on the TL box, but it still yells. This is quite the
>>>pickle. You can run "ldd" on the binary to see what libraries it requires
>>>and make sure the library paths are in /etc/ld.so.conf .
>>>If you modify /etc/ld.so.conf you'll have to run ldconfig or reboot.
>All true, but I'm more interested in what libraries are missing and why
>it's "impossible" to put them on the system.....Maybe I should ask....
Yes, the output of ldd is critical here. Usually an application only uses a
library if it needs it, so if your using libgssrpc.so.3.0 it is because the
developer needed the GSSAPI.
You can relink the application --static and create a huge binary with very few
dependencies.
You can install the requesite libraries on the system.
You can cheat. Put the libraries you need, but the over-yonder system may not
have, in with the tar ball. Then make a short script that does a
LD_LIBRARY_PATH={app install dir/lib} then executes your program. The loader
will look in LD_LIBRARY_PATH when it trundles about looking for libraries, find
them there and happily slap them in. Only caveat is that if new/better
libraries get loaded on the system subsequently your app won't see them and will
continue to use the old/buggy libraries. Not to mention it "wastes" disk
space. But this is not a bad method with critical applications as it insulates
them from spurious library updates. Basically the diffrence between putting a
Win32 DLL in the program's directory or windows/system.
Morrison Industries
1825 Monroe Ave NW
Grand Rapids, MI. 49505