我正在尝试使用ubuntu64-16.04.3-minimal-odroid-c2-20171005
操作系统在 Odroid-C2 上运行二进制文件。该文件有 777 权限,是为 ARM 编译的。
# ls -l my_file
-rwxrwxrwx 1 root root 136409 Sep 30 13:17 my_file
#pwd
/home
#file my_file
my_file: ELF 32-bit LSB executable, ARM, version 1, statically linked, not stripped
#uname -a
Linux odroid64 3.14.79-116 #1 SMP PREEMPT Tue Sep 26 01:19:06 BRT 2017 aarch64 aarch64 aarch64 GNU/Linux
当我尝试运行它(./my_file
)时,我收到一个错误:
-bash: ./my_file: cannot execute binary file:Exec format error
我知道我的二进制文件是 32 位的,而我的 Ubuntu 是 64 位的,所以我按照本教程添加了新架构。这没有帮助,正在发生同样的错误。
我还搜索了另一种解决方案,但似乎出现此错误的唯一问题是架构不匹配。我很确定这不是我的问题——elf 是 ARM,Odroid 也是。我以前在这个 Odroid 上运行过类似的二进制文件,所以我现在真的很困惑。
你能帮我找出我的错误吗?