I just downloaded Zodiac (a chem software) for linux and I tried using sudo bash ./Zodiac_linux from the directory where it's installed and I received the error:

./Zodiac_linux: ./Zodiac_linux: cannot execute binary file

I am running 12.10 if it's relevant.

Running file Zodiac_linux gives the output:

Zodiac_linux: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.8, not stripped

The output of locate libopenbabel is:

  • What's the output of file Zodiac_linux? Feb 2, 2013 at 0:43
  • Um, I don't understand what you want from me. Just for some background I don't understand much programming so you'll have to explain everything in simple terms for me to understand it. Just tell me what to do.
    – Josh Pinto
    Feb 2, 2013 at 0:46
  • Run file Zodiac_linux from the directory where it's installed and include the output in your question Feb 2, 2013 at 0:54
  • What's the output of uname -m? Feb 2, 2013 at 1:07
  • You mean what architecture I'm operating on? i686
    – Josh Pinto
    Feb 2, 2013 at 1:09

1 Answer 1


Bash is a shell, it can't execute binary files.

Presuming the file is already executable, you can simply type ./Zodiac_linux.

If it isn't executable yet, you can set the executable bit with sudo chmod +x ./Zodiac_linux and then run the above command.

  • This gives me the output './Zodiac_linux: error while loading shared libraries: libopenbabel.so.2: cannot open shared object file: No such file or directory'
    – Josh Pinto
    Feb 2, 2013 at 0:56
  • Do you have Open Babel installed? Maybe you could run a quick locate openbabel to check if it exists anywhere.
    – Marcus
    Feb 2, 2013 at 1:15
  • Sure do. I installed it just yesterday so I could install the latest version of Avogadro.
    – Josh Pinto
    Feb 2, 2013 at 1:16
  • If you can verify that exact file exists (including version number), you can try setting the environment variable LD_LIBRARY_PATH=/path/to/lib/ and then running the program from the same terminal. If it's just that the version is wrong, you may be able to hack around by symlinking libopenbabel.so.2 to e.g. libopenbabel.so.1 (if that exists). Also, see here.
    – Marcus
    Feb 2, 2013 at 1:28
  • Simple English please? Might be best to add it to your answer because I am no programmer, you'll have to tell me exactly what to do.
    – Josh Pinto
    Feb 2, 2013 at 1:29

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.