Dev C in Windows 8: Interner gcc-Fehler

Lesezeit: 4 Minuten

Benutzer-Avatar
Körper

Ich bin ein Lehrerassistent für eine C-Programmierklasse, und der Lehrer verwendet Dev C++ als Compiler für die Klasse. Ich persönlich würde einen anderen verwenden, aber die Wahl liegt hier nicht bei mir. Kürzlich habe ich Windows 8 Professional 64 Bit installiert, das auf Dreamspark verfügbar ist, obwohl ich an meiner Universität bin, damit ich mit der Entwicklung von Metro-Apps für einige Wettbewerbe beginnen kann. Leider hat Dev C++ aufgehört zu kompilieren. Mit Windows 7 64bit hat es bisher problemlos funktioniert.

Beim Kompilieren erhalte ich eine Fehlermeldung:

Compiler: Default compiler
Executing  gcc.exe...
gcc.exe "C:\Users\James\Documents\Homework\TA_CPRE_185\counter.c" -o "C:\Users\James\Documents\Homework\TA_CPRE_185\counter.exe"    -I"C:\Dev-Cpp\include"   -L"C:\Dev-Cpp\lib" 
gcc.exe: Internal error: Aborted (program collect2)
Please submit a full bug report.
See <URL:http://www.mingw.org/bugs.shtml> for instructions.

Execution terminated
Compilation successful

Es sagt, dass die Kompilierung erfolgreich ist, aber das ist nicht der Fall, also wird keine ausführbare Datei erstellt. Ich möchte wissen, ob jemand eine Idee hat, was Dev C++ dazu bringen könnte, auf dieser Version von Windows zu funktionieren, damit ich Dev C++ nicht in einer virtuellen Maschine ausführen muss? Ich brauche es, damit ich Klassendemonstrationen machen kann.

  • Ist es nur dieses eine Programm (counter.c) oder passiert es mit jeder Eingabe?

    – PaulR

    10. Oktober 2012 um 4:09 Uhr

  • Es ist mit jeder Datei, die ich zu kompilieren versuche. Sogar eine einfache “helloWorld.c”-Datei.

    – Körper

    10. Oktober 2012 um 4:11 Uhr

  • Das wird leider schwierig. Ich gehe davon aus, dass Sie die MinGW/GCC-Installation verwenden, die mit Dev C++ geliefert wird … sie ist verdammt alt. Wenn Sie verzweifelt sind, können Sie versuchen, ein neueres MinGW wie die TDM-GCC-Builds einzubinden, aber ich habe meine Zweifel, wie gut Dev-C++ damit umgehen wird.

    – John Chadwick

    10. Oktober 2012 um 4:13 Uhr

  • Hat Windows 8 eine Kompatibilitätsfunktion wie den XP-Modus?

    – Preet-Sangha

    10. Oktober 2012 um 4:15 Uhr

  • Es ist die MinGW/GCC-Installation, und die von ihm verwendete Version wurde 1991 urheberrechtlich geschützt. Ich werde sehen, ob ich herausfinden kann, wie ich eine neuere Compiler-Version verwenden kann. Ich frage mich, was der Unterschied zwischen der Ausführung auf diesem neuen Windows und Windows 7 ist …

    – Körper

    10. Oktober 2012 um 4:16 Uhr

Bitte sagen Sie Ihrem Lehrer, dass er stattdessen Dev-C++ aktualisieren soll:

http://sourceforge.net/projects/orwelldevcpp/?source=directory

Dieser wird mit einem funktionierenden MinGW 4.7- oder einem TDM-GCC 4.6.1 (x64)-Compiler ausgeliefert, behebt endlose Mengen an Fehlern und ist auch portabel.

  • Ich fühlte mich geneigt, dies als Werbung zu kennzeichnen, aber stattdessen stimmte ich hoch :-).

    – rubenvb

    5. Juli 2013 um 9:14 Uhr

  • Welches Verhalten wird von Benutzern erwartet?: „Veröffentlichen Sie gute, relevante Antworten, und wenn sich einige (aber nicht alle) auf Ihr Produkt oder Ihre Website beziehen, ist das in Ordnung. Sie jedoch muss geben Sie in Ihren Antworten Ihre Zugehörigkeit an.”

    – Inspektionsfähig

    25. August 2016 um 20:24 Uhr

Ich glaube, dass Dev-C++ mit einer sehr alten Version von MinGW geliefert wird (3.4.x, wenn ich mich nicht irre). MinGW-Versionen vor 4.2.2 haben Probleme beim Kompilieren von Programmen unter Windows Vista und höher, es sei denn, sie befinden sich auf dem PATH.

Sie können also entweder Ihre Version von MinGW aktualisieren (wie Sie in einem Kommentar erwähnt haben, den Sie bereits getan haben), oder Sie können das Verzeichnis MinGW\bin zum Systempfad hinzufügen.

Wenn Sie Ihre MINGW-Version nicht ändern können, können Sie versuchen, die folgende Datei umzubenennen: MinGW\libexec\gcc\mingw32\3.4.2\collect2.exe in collect2.exe.old

(Diese Lösung funktionierte nach einer Migration von W7 auf W10).

Ich habe den gleichen Fehler erhalten, konnte ihn aber folgendermaßen umgehen.

  1. Anwendung mithilfe von Programmen hinzufügen/entfernen entfernen
  2. Deaktivieren Sie die Benutzerzugriffssteuerung
  3. Neustart
  4. Laden Sie Dev-Cpp 5.4.0 TDM-GCC x64 4.7.1 Setup.exe herunter
  5. Klicken Sie mit der rechten Maustaste auf die heruntergeladene Datei und wechseln Sie für alle Benutzer in den „Win7-Kompatibilitätsmodus“, wählen Sie „Als Administrator ausführen“ und klicken Sie auf „OK“.
  6. Klicken Sie mit der rechten Maustaste auf die heruntergeladene Datei und wählen Sie „Als Administrator ausführen“ (Hinweis: Dies sollte nicht erforderlich sein, aber es ist Windows, also decken Sie Ihre Grundlagen ab)
  7. Wählen Sie alle Standardwerte aus, aber deaktivieren Sie auf dem letzten Bildschirm „Dev C++ jetzt ausführen“ und wählen Sie dann „Fertig stellen“.
  8. Öffnen Sie den Windows Explorer und navigieren Sie zum Installationsverzeichnis C:\Program Files (x86)\Dev-Cpp und suchen Sie „devcpp.exe“; Klicken Sie mit der rechten Maustaste und wählen Sie “Win7-Kompatibilitätsmodus” für alle Benutzer und wählen Sie “Als Administrator ausführen” und klicken Sie auf “OK” (auch dies ist wahrscheinlich nicht erforderlich, schadet aber auch nicht).
  9. Doppelklicken Sie auf die Anwendung und heften Sie sie zur einfacheren Verwendung an Ihre Taskleiste.
  10. Öffnen Sie ein neues Projekt und testen Sie es, es sollte ohne Probleme funktionieren.

ich benutzte MinGW-Installationsmanager um die letzte Version von C Compiler (im Moment 5.3.0-3) herunterzuladen und ich habe die Dateien in den Ordner von Dev-Cpp repliziert. Jetzt funktioniert es perfekt in meinem Windows 10.

1074390cookie-checkDev C in Windows 8: Interner gcc-Fehler

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy