无法执行二进制文件:执行格式错误,但我可以在更新之前执行

无法执行二进制文件:执行格式错误,但我可以在更新之前执行

我试图在我的树莓派上运行一个二进制文件,叫做地图截图但代码有些问题。我创建了一个新问题,代码所有者已修复该问题。

当时我正在配置我的 raspian 服务器,还运行了apt-get update其他东西,然后我看到他修复了代码,我试图再次运行它(v13)。
然后我收到一个错误cannot execute binary file: Exec format error。我想也许他搞砸了什么,所以我尝试了旧版本 v12。但我开始遇到同样的问题。

我谷歌了一下,然后我看到该文件是: mapshot-linux13: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, Go BuildID=uddLtPxdcvoAGXUXjLzN/18KPkQR-w3AkfEdyv7ZO/8woBqF8KCDZW7lw-YD2O/r5WVmHnTYn0RB8KU0AgZ, not stripped

我的系统架构是 ARM:

mapshot@raspberrypi:~ $ cat /proc/cpuinfo
processor       : 0
model name      : ARMv7 Processor rev 4 (v7l)
BogoMIPS        : 38.40
Features        : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm crc32
CPU implementer : 0x41
CPU architecture: 7
CPU variant     : 0x0
CPU part        : 0xd03
CPU revision    : 4
...

这完全说得通,但我之前怎么能毫无问题地运行它呢?我从脚本中得到错误,我能够使用命令运行……--help等等

答案1

除非您正在运行模拟器(例如 qemu),否则无法运行二进制文件(不是脚本)。

有可能你使用 configure、make、make install 构建了你自己的 0.12 版本。或者下载了别人用这种方法创建的二进制文件(这不是一个好主意)。

相关内容