it-swarm.com.de

Eclipse CDT-Projekt wurde erstellt, aber "Start fehlgeschlagen. Binär nicht gefunden"

Windows 7, Eclipse CDT, Juno Service Release 2, Cross-Compiler.

Projekte kompilieren zwar ausführbare Dateien, aber Eclipse kann sie nicht sehen. daher schlägt 'Run' fehl. Ausführbare Dateien werden im Debug-Verzeichnis abgelegt. Doppelklick oder Befehl Der Eingabeaufforderung für die kompilierte ausführbare Datei funktioniert problemlos.

enter image description here

Wie kann ich das lösen?

26
Nenad Bulatovic

Ich denke, ich habe eine Lösung gefunden - der richtige binäre Parser muss ausgewählt werden, damit Eclipse die ausführbare Datei erkennen kann:

Wählen Sie das Projekt aus und klicken Sie mit der rechten Maustaste. Projekt-> Eigenschaften-> C/C++ Build-> Einstellungen-> Binäre Parser, PE Windows Parser.

Das heißt Wenn der Cygwin-Compiler verwendet wird, sollte der Cygwin-Parser verwendet werden.

Das funktionierte für mich zumindest für Cross-Compiler (sowohl unter Windows 7 als auch unter Ubuntu 12.04). Unter Linux verwende ich Elf Parser.

Wenn jemand die bessere Lösung hat, bitte beraten.

22
Nenad Bulatovic

Просто выберите проект и нажмитеCTRL+B,.

40

Dies ist mir passiert und ich habe eine Lösung gefunden, ob das für Sie funktioniert:

Nachdem Sie Ihr Projekt mit dem Hammersymbol erstellt haben:

  1. wählen Sie "Ausführen".
  2. Konfigurationen ausführen.
  3. Wählen Sie "C++ - Anwendung".
  4. Klicken Sie oben links im geöffneten Fenster auf das Symbol "New Launch Configuration".
  5. Wählen Sie "Durchsuchen" unter der C/C++ - Anwendung.
  6. Navigieren Sie zu dem Ordner, in dem Sie Ihr Projekt ursprünglich erstellt haben.
  7. Geben Sie den Debug-Ordner ein.
  8. Klicken Sie auf die Binärdatei mit dem Namen des Projekts. 
  9. Wählen Sie "OK". 
  10. Klicken Sie auf "Übernehmen", um den soeben eingestellten Link zu bestätigen. 
  11. Schließen Sie das Fenster.

Danach sollten Sie das Projekt so oft ausführen können, wie Sie möchten.

Hoffentlich klappt das bei dir.

39
nathan ael

Wenn Sie auf einem Mac ein ähnliches Problem haben, wie oben von Nenad Bulatovic erwähnt, müssen Sie die Binärparser ändern.

Drücken Sie Command + I Eigenschaften öffnen (oder mit der rechten Maustaste auf Ihr Projekt klicken und Eigenschaft auswählen)

Stellen Sie sicher, dass Sie Mach-O 64 Parser auswählen.

enter image description here

5
leoflower

in meinem Fall ist dies die Lösung, um das Problem zu beheben. Wenn Sie ein Projekt erstellen, wählen Sie MinGW GCC aus dem Toolchains-Fenster aus.

 enter image description here

Wählen Sie nach der Erstellung des Projekts die Projektdatei aus und drücken Sie Strg + B, um das Projekt zu erstellen. Klicken Sie dann auf Ausführen, und die Ausgabe sollte auf der Konsole gedruckt werden.

3
Giorgos K

zuerst musste ich auf einen kleinen Pfeil klicken, der ein Menü mit "Run Configurations", öffnet. enter image description here

im folgenden Fenster musste ich auf "C/C++ - Anwendung" klicken, gefolgt von einer textlosen Schaltfläche mit einem grünen + darauf  enter image description here

dann musste ich die "Übernehmen" und "Ausführen" Taste drücken  enter image description here

und dann könnte Eclipse das Programm ausführen/debuggen. :)

2
hanshenrik

Ich hatte dieses Problem - und die Ursache war ungültige DWARF 3-Informationen in der Binärdatei des ausgewählten Projekts (die keine ausführbaren Binärdateien hatten).

Die Art und Weise, wie es funktioniert, war ungefähr so: Ich hatte zwei Projekte Main und Library. Main hing vom Projekt Library ab, und das erstere verfügte über eine ausführbare Datei, während das letztere gerade eine statische Bibliothek (mit der Main verknüpft wurde) erstellt hatte.

Meine Run-Option wurde auf "Run/Debug -> Launch" gesetzt. Die Einstellung wurde auf "Start Current, andernfalls Last" wie folgt gesetzt (siehe unten rechts):

Run/Debug settings

Wenn ich das Projekt Main ausgewählt hätte, würde alles gut funktionieren: Es würde das Hauptprojekt starten. Wenn ich das Projekt Library ausgewählt hätte1 es würde mit der vom OP ausgegebenen Fehlermeldung fehlschlagen. Der Grund schien folgender zu sein: Da ich das Projekt Library ausgewählt hatte, scannte der PE-Scanner die Binärdateien im Projekt, um zu sehen, ob irgendwelche startfähig waren, und weil beim Scannen aufgrund dieses Fehlers der Fehler fehlgeschlagen ist Es wurde eine Nachricht angezeigt, bevor es zu "Starten der zuvor gestarteten Anwendung" kam.

Ich könnte das umgehen, indem ich:

  1. Sicherstellen, dass das Projekt, das ich starten wollte, ausgewählt wurde, oder ...
  2. Ändern von Compilern in solche, die DWARF-Informationen enthalten, die Eclipse ohne Fehler analysieren könnte, oder ...
  3. Wählen Sie "Immer die zuvor gestartete Anwendung starten" in den Einstellungen "Ausführen/Debuggen" aus. Dies ist jedoch möglicherweise nicht Ihre bevorzugte Betriebsart.

1 Normalerweise würde ich das Projekt normalerweise nicht direkt auswählen. Es wurde indirekt ausgewählt, da ich in einer der darin enthaltenen Quelldateien arbeitete.

1
BeeOnRope

Wenn die Erstellung erfolgreich war und der Fehler "Binärdatei wird nicht gefunden" angezeigt wird. Versuchen Sie, die folgenden Schritte auszuführen:

Klicken Sie auf Ausführen -> Konfiguration ausführen -> C/C++ - Anwendung -> Klicken Sie auf Projektname Debug -> Klicken Sie auf Durchsuchen und wählen Sie Ihre Projektdatei aus -> Drücken Sie Ok -> darunter Binärdatei durchsuchen ( Gehen Sie zu Ihrem Eclipse-Arbeitsbereich und wählen Sie Ihre Projektdatei aus -> Sie finden zwei Dateien Drücken Sie die RUN-Taste.

Dies sollte das Problem lösen

1
Afroz Chakure

Stellen Sie sicher, dass der Ordnername nicht die Erweiterung .c enthält. Wenn ich die .c-Erweiterung in meinem Ordnernamen entfernte, funktionierte das automatisch.

0
shma

drücken Sie Strg + B und dann können Sie die Schaltfläche Ausführen verwenden. 

0
9113303

Ich habe das gleiche Problem mit Eclipse 3.8.1. Für mich funktionierte es, den Artefakttyp auf ausführbar zu setzen:

Klicken Sie mit der rechten Maustaste auf das Projekt -> C/C++ Build -> Einstellungen -> Build Artefakt -> Artefakttyp: Ausführbare Datei

Durch das erneute Erstellen des Projekts wurde der Eintrag Binaries im Projekt-Explorer erstellt.

0
ggagliano

Nach meiner Erfahrung müssen Sie nach dem Erstellen Ihres Projekts (CTRL+B) eine Lauf- (oder Debug-) Konfiguration im Dropdown-Menü Run oder Debug der Hauptsymbolleiste erstellen. Klicken Sie dann auf der Hauptseite auf 

Search Project...

taste. 

Dadurch werden alle von Ihnen erstellten ausführbaren Dateien gefunden und in einem Dialogfeld angezeigt. Sie können den richtigen auswählen und dann den Run (oder

0
tinlyx

Sie müssen auf den MinGW-Compiler klicken, wenn Sie den Code ausführen. Wenn Sie dies nicht tun, wird der Fehler beim Starten der Binärdatei nicht gefunden.

0
andy

Nachdem ich hier alles ausprobiert hatte, bestand für mich die Erlaubnis zur Ausführung von Eclipse:

cd Eclipse-installation-dir 
Sudo chmod +x Eclipse

Verwenden von Eclipse Luna unter Ubuntu 12.04 LTS.

0
user3381196