On Tuesday 01 January 2013 15:10:00 Chet Ramey wrote:
On 1/1/13 2:49 PM, Aharon Robbins wrote:
Michael Williamson wrote:
I have a complaint. Apparently, when unknowingly attempting to run a
32-bit executable file on a 64-bit computer, bash gives the error
message "No such file or directory". That error message is baffling and
frustratingly unhelpful. Is it possible for bash to provide a better
error message in this case?
It's not Bash. That is the error returned from the OS in errno when
it tries to do an exec(2) of the file. Bash merely translates the
error into words.
FWIW, the file in question that's not found is either the 32-bit version
of the loader or one of the required 32-bit libraries, not the binary
itself.
it's the ldso missing. if a lib was missing, the ldso would spit out a useful
message telling you exactly which lib could not be found. at least, that's
the standard Linux (glibc/uclibc/etc...) behavior.
$ ./a.out: error while loading shared libraries: libfoo.so: cannot open shared
object file: No such file or directory
-mike