On 04/27/2015 06:31 PM, Steven Haigh wrote:
On 28/04/2015 7:07 AM, Ken Teh wrote:
I have a user who has installed an executable built on a other Linux
distro. Claims it was built on a 64-bit linux (doubtful). He has no
problems running it on a 32-bit SL6.x machine but cannot run it on a
64-bit SL6.x machine. Chokes with the following:
...:/lib/ld-linux.so: bad ELF interpreter: No such file or directory.
I'm wondering if it is "safe" to add a symbolic link to the
ld-linux-x86_64.so.2 to fix this.
/lib/ld-linux.so is a 32 bit library. The 64 bit libraries are usually
in /lib64/
You can install the 32 bit libraries on a 64 bit system - and things
will work.
Start with:
yum whatprovides "/lib/ld-linux.so"
Issuing a 'file' command on the executable will tell you if their claims
are true.
For example (32-bit SL5):
$ file /bin/bash
/bin/bash: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), for
GNU/Linux 2.6.9, dynamically linked (uses shared libs), for GNU/Linux
2.6.9, stripped
As Steven said, installing the 32bit libs is probably the easiest way
out. This is where 'ldd' is your friend.