Ich versuche, eine Binärdatei auszuführen vondiese Cross-Compiler-Toolchain(Link zur .tar.bz2-Datei).
Wenn ich versuche, die Binärdatei auszuführen, erhalte ich eine überraschende Meldung, dass sich die Datei nicht in meinem befindet $PATH
, obwohl sie existiert und ausführbar ist:
$ cross-compiler-armv4l/bin/armv4l-gcc
can't find cross-compiler-armv4l/bin/armv4l-gcc in $PATH
$ ls -l cross-compiler-armv4l/bin/armv4l-gcc
-rwxr-xr-x 1 rzg rzg 31964 Apr 5 2009 cross-compiler-armv4l/bin/armv4l-gcc
Ich verwende Ubuntu 18.04 auf x86_64 und die Architektur der von mir verwendeten Datei ist 32-Bit. Daher habe ichdiese Antwortum die i386-libc zu installieren, aber das war nicht genug.
$ file cross-compiler-armv4l/bin/armv4l-gcc
cross-compiler-armv4l/bin/armv4l-gcc: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), statically linked, stripped
Wenn ich ausführe strace
, stat
schlägt die Ausführung der Datei fehl:
access("/home/user/busybox-1.32.0/cross-compiler-armv4l/bin/armv4l-gcc", X_OK) = 0
stat("/home/user/busybox-1.32.0/cross-compiler-armv4l/bin/armv4l-gcc", 0xffe4d108) = -1 EOVERFLOW (Value too large for defined data type)