Eclipse Juno CDT-Indexer und #include <QtGui>

Alles zu Entwicklungsumgebungen und Editoren für Qt
Antworten
FaS
Beiträge: 184
Registriert: 25. Mai 2006 19:48
Kontaktdaten:

Eclipse Juno CDT-Indexer und #include <QtGui>

Beitrag von FaS »

Hallo,

Priorität: Niedrig.
Kurzfassung: Inkludiere ich irgendwo <QtGui>, kann der Indexer einige Symbole nicht mehr auflösen.

Betrifft: eclipse Juno CDT.

Ich hatte das Gefühl, dass die von uic/moc generierten ui_*.h- und moc_*.cpp-Dateien ihn vielleicht durcheinander bringen. In der Vorgängerversion eclipse Indigo konnte der Indexer aber noch alles komplett auflösen. Beim Schreiben dieses Posts habe ich das Problem dann auf #include <QtGui> herunterbrechen können. Damit kann ich leben, aber es wäre interessant herauszufinden, was das eigentliche Problem ist.

Beispielfehler:
Type 'MainWindow' could not be resolved
Name resolution problem found by the indexer
Es folgt ein Minimalbeispiel mit einer window_main.ui-Datei.

main.cpp:

Code: Alles auswählen

#include "window_main.h"

int main( int argc, char **argv )
{
  QApplication app(argc, argv);

  MainWindow w;
  w.show();

  return app.exec();
}
window_main.h:

Code: Alles auswählen

#ifndef _WINDOW_MAIN_H_
#define _WINDOW_MAIN_H_

#include <QtGui>
#include "ui_window_main.h"

class MainWindow : public QMainWindow
{
  Q_OBJECT
  public:
    MainWindow();
  private:
    Ui::MainWindow m_ui;
};

#endif /* with _WINDOW_MAIN_H_ */
window_main.cpp und window_main.ui enthalten nichts nennenswertes.

In der window_main.cpp erkennt der den Konstruktor von MainWindow nicht ("Member declaration not found") und in der main.cpp kennt der MainWindow auch nicht ("Type 'MainWindow' could not be resolved").
Ersetze ich in der window_main.h <QtGui> durch <QMainWindow> funktioniert alles wunderbar.

Grüße
FaS
Antworten