problem with executables

Greg Schafer gschafer at zip.com.au
Sat Nov 26 11:51:45 PST 2005


Dan Nicholson wrote:

> > And this seems to happen for any binary which was compiled on a 2.4
> > kernel, not just this one.
> >
> > What exactly is happening here?
> 
> I could be wrong,

I suspect you are :-)

> but this seems to be the --enable-kernel in glibc business.  You won't be
> able to execute those binaries since as Ken said, there trying to use the
> 2.4 glibc kernel interfaces, and you've specified to only use 2.6+
> interfaces when you compiled glibc with --enable-kernel=2.6.0.

No, it's more complicated than that. Note that Dreppers page refers to DSO's
as opposed to normal binaries. You can easily test this by running an
old ls binary on a current system. It'll work fine:

$ file ./ls
./ls: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), for GNU/Linux 2.4.21, dynamically linked (uses shared libs), for GNU/Linux 2.4.21, stripped
$ ./ls /
bin  boot  dev  etc  home  lib  mnt  proc  root  sbin  sys  temptools  tmp usr  var

I suspect the OP's problem is more fundamental than that. That "No such file
or directory" error message is often caused by a bad dynamic linker path
embedded in the binary (PT_INTERP) which can be checked using readelf eg:

readelf -l /usr/local/cocoa-4.5/cocoa_qt | grep interpreter

Regards
Greg



More information about the cross-lfs mailing list