eclipse CDT & MinGW C/C++ Compiler

d4rkY89

Mitglied
Hallo,
ich weiß es gibt schon viele Threads über eclipse und c++ (und ich habe mir diese auch angeschaut) aber keiner dieser Threads löst mein Problem.

Ich möchte nun also gerne mit Eclipse C/C++ programmieren und habe bisher folgende Schritte durchgeführt:

  1. Aktuellen MinGW Installer heruntergeladen (mingw-get-inst) und mit diesem den "C-, C++-Compiler sowie das MinGW Developer Toolkit (beinhaltet das MSYS Basic System)" installiert
  2. Ich habe in der Umgebungsvariable "Path" die Pfade "C:\MinGW\bin" sowie "C:\MinGW\msys\1.0\bin" hinzugefügt und den PC erst mal neugestartet.
  3. Das aktuelle JDK 7u1 installiert
  4. Die aktuelle "Eclipse IDE for C/C++ Developers" heruntergeladen und entpackt


Nun lege ich mir in eclipse ein C++ Projekt an und wähle unter "Project type" "Empty Project" und unter "Toolchains" "MinGW GCC" aus und drücke auf Finish. Anschließend habe ich mir folgende simple HelloWorld.cpp geschrieben und erhalte einige Error-Meldungen:

eclipsecdt.png


Compilieren und ausführen lässt sich das Programm hingegen ohne Probleme. Ich denke eclipse weiß nicht woher es die Header-Dateien bekommen soll. Wie richte ich eclipse nun korrekt ein? Ich finde in den Einstellungen keine Möglichkeit einen Verweis auf die Header-Dateien zu geben. Und ohne funktioniert in eclipse leider überhaupt nichts - wie z.b. die Autovervollständigung - was gleich einem normalen Text-Editor kommt :(


Gruß d4rkY

edit:
Ich habe nun eine Möglichkeit gefunden, den Ordner mit den Header-Dateien manuell in das Projekt miteinzubinden:
  • Zunächst die Eigenschaften des Projekts öffnen
  • Unter "C/C++ General" "Paths and Symols" auswählen
  • Dann den Tab "Source Location" wählen und den Button "Link Folder..." anklicken
  • Indem neu geöffneten Dialog das Häkchen bei "Link to folder in the file system" auswählen und als Pfad den Ordner mit den Header-Dateien (bei mir "C:\MinGW\lib\gcc\mingw32\4.6.1\include\c++") auswählen.

Aber es muss ja eine Möglichkeit geben, dass ich das nicht jedes mal selbst einstellen muss bei jedem einzelnen Projekt, dass ich anlege.

Deswegen bleibt die Frage weiterhin offen: Wie richte ich eclipse richtig ein?

Gruß d4rky
 
Also ich benutze auch Eclipse CDT und MinGW (einziger Unterschied ich habe das MinGW aus dem Qt-Komplettinstaller, sollte aber aufs selbe hinauskommen). Mich wundert es nur, weil ich habe auch nicht viel mehr gemacht als du.

Wenn du ein Projekt erstellst sollte es in deinem Projekt einen Ordner "includes" geben, wo die verschiedenen Pfade für die header sind. Ist das bei dir auch nicht der Fall?
Und welchen Pfad hast du in deinen Systemvariablen?
 
Hallo Jannesta,
nein in meinen Projekten gibt es keinen Ordner "includes".
Wenn ich ein neues Projekt anlege ist dies komplett leer.

Meine Path-Variable hat folgenden Wert:

Code:
C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;%CommonProgramFiles%\Microsoft Shared\Windows Live;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\ATI Technologies\ATI.ACE\Core-Static;C:\Program Files\SlikSvn\bin\;C:\Program Files\TortoiseSVN\bin;C:\MinGW\bin;C:\MinGW\mingw32\bin

Ich kann ja mal versuchen die Ordnerpfade zu den Header-Dateien auch anzugeben. Vielleicht hilft das ja.

Gruß d4rky
 
Es gibt in der Eclipse eine View, die heißt "Error Log". Die findest du über Menü "Window" => "Show View" => "Other", dort auf "General" => "Error Log".

Die Einträge in dieser View stellen die Fehler und Warnungen deiner Eclipse dar. Es gibt einen Button "Export Log". Den klicken, das Log erzeugen und hier anhängen.
 
Im Log steht leider nicht viel drin:

Code:
!SESSION 2011-11-20 11:54:36.613 -----------------------------------------------
eclipse.buildId=M20110909-1335
java.version=1.7.0_01
java.vendor=Oracle Corporation
BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=de_DE
Framework arguments:  -product org.eclipse.epp.package.cpp.product
Command-line arguments:  -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.cpp.product

!ENTRY org.eclipse.cdt.core 1 0 2011-11-20 11:55:25.741
!MESSAGE Indexed 'HelloWorld' (1 sources, 13 headers) in 0,25 sec: 1 declarations; 0 references; 14 unresolved inclusions; 0 syntax errors; 3 unresolved names (75,00*%)

Gruß d4rky
 
Zurück