我正在尝试运行一个预编译的软件包(据称是'linux64')但是收到以下错误消息:
t.kuilman@steroid:~/Peeper/bin/netchop-3.1/bin$ ./netChop
-bash: ./netChop: cannot execute binary file: Exec format error
我检查了这个文件的编译方式(见下文),结果证明它是一个ELF 64位LSB可执行文件。
t.kuilman@steroid:~/Peeper/bin/netchop-3.1/bin$ file ./netChop
./netChop: ELF 64-bit LSB executable, no machine, version 1 (SYSV), statically linked, for GNU/Linux 2.4.1, for SuSE 9.1, stripped
t.kuilman@steroid:~/Peeper/bin/netchop-3.1/bin$ ldd ./netChop
not a dynamic executable
t.kuilman@steroid:~/Peeper/bin/netchop-3.1/bin$ uname -a
Linux steroid 3.13.0-76-generic #120-Ubuntu SMP Mon Jan 18 15:59:10 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
如何在我的系统上运行此文件(Ubuntu 14.04.1 LTS(GNU / Linux 3.13.0-76-generic x86_64))?
答案 0 :(得分:0)
此可执行文件可能已损坏,或以某种非标准方式构建:
ELF 64-bit LSB executable, no machine, version 1 (SYSV) ...
正常的静态链接Linux可执行文件应如下所示:
ELF 64-bit LSB executable, x86-64, version 1 (GNU/Linux)
注意机器(“无机器”与“x86-64”)和OS ABI(“SYSV”与“GNU / Linux”)的差异。
在任何情况下,你都可以做 nothing ,除了向包的制作人投诉。