简体   繁体   English

在 Ubuntu 64 上运行 ELF 64 位 LSB 可执行文件

[英]Run ELF 64-bit LSB executable on Ubuntu 64

I am trying to run a package that is precompiled (supposedly for 'linux64') but get the following error message:我正在尝试运行一个预编译的包(据说是为“linux64”),但收到以下错误消息:

t.kuilman@steroid:~/Peeper/bin/netchop-3.1/bin$ ./netChop 
-bash: ./netChop: cannot execute binary file: Exec format error

I checked how this file is compiled (see below) and it turns out to be an ELF 64-bit LSB executable.我检查了这个文件是如何编译的(见下文),结果证明它是一个 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

How can I get this file to run on my system (Ubuntu 14.04.1 LTS (GNU/Linux 3.13.0-76-generic x86_64))?如何让这个文件在我的系统上运行(Ubuntu 14.04.1 LTS (GNU/Linux 3.13.0-76-generic x86_64))?

This executable is likely either corrupt, or built in some non-standard way:此可执行文件可能已损坏,或以某种非标准方式构建:

ELF 64-bit LSB  executable, no machine, version 1 (SYSV) ...

A normal statically linked Linux executable should look like this:一个普通的静态链接的 Linux 可执行文件应该是这样的:

ELF 64-bit LSB  executable, x86-64, version 1 (GNU/Linux)

Note machine ("no machine" vs. "x86-64") and OS ABI ("SYSV" vs. "GNU/Linux") differences.注意机器(“无机器”与“x86-64”)和操作系统 ABI(“SYSV”与“GNU/Linux”)的差异。

In any case, there is nothing you can do about it, other than complain to the producer of the package.在任何情况下,有没有什么可以做这件事,除了抱怨包装的生产商。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM