48 votes

Bash : ./filename : Impossible d'exécuter un fichier binaire

Je n'arrive pas à exécuter un code compilé en fortran sous ubuntu 11.10 32 bit.

Le message d'erreur est le suivant

bash: ./filename : Cannot execute binary file.

J'ai également installé les bibliothèques gcc et gfortran.

Quelqu'un peut-il nous aider ?

$ file um
um: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.9, not stripped

46voto

loco41211 Points 349

Comme vous pouvez le voir dans la sortie de file um que vous avez posté dans un commentaire, votre binaire est un binaire 64 bits.

Les systèmes 32 bits ne peuvent pas exécuter de binaires 64 bits, cela ne fonctionne que dans l'autre sens.

7voto

dz902 Points 171

Pour les Googlers :

  • 32 bits ou 64 bits ? Vérifiez avec file yourbinary
  • Autorisation d'exécution ? Faire chmod +x yourbinary
  • Chemin correct ? Faire ./yourbinary

6voto

Evilripper Points 170

Une autre solution pour les personnes qui ont ce problème, à l'exception de la partie concernant les bits non appariés, est d'exécuter le fichier sans la commande "bash".

Il suffit d'utiliser chmod +x 'path to the file' puis exécutez 'the path to the file' C'est ainsi que j'ai résolu mon problème.

4voto

Chris Magnuson Points 297

Essayez de rendre le fichier exécutable

chmod +x um.exe

Essayez ensuite de l'exécuter

./um.exe

Mais s'il s'agit d'un fichier exe compilé pour Windows, vous devez probablement installer Wine.

2voto

Mark Amery Points 181

Une autre source possible de cette erreur est la tentative d'exécution d'un exécutable binaire Linux sur un Mac, ou vice versa.

Par exemple, en essayant d'exécuter le programme true binaire de mon Mac sur une machine Ubuntu sur laquelle je l'ai transféré par SCP :

$ ./mactrue 
-bash: ./mactrue: cannot execute binary file: Exec format error

Si vous avez téléchargé un binaire et que son exécution échoue avec cette erreur, vérifiez si vous n'avez pas téléchargé la version correspondant au mauvais système d'exploitation.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X