4
votes

I am trying to run a package that is precompiled (supposedly for 'linux64') but get the following error message:

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.

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))?

1
There seems to be something very strange about that executable. Can you upload it somewhere, or provide a hex dump of the first 512 bytes or so? - user149341
Could you bring up SuSE 9.1 64-bit in a VM (VirtualBox) and try it there? - jamieguinan

1 Answers

1
votes

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:

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.

In any case, there is nothing you can do about it, other than complain to the producer of the package.