Компиляция проекта Qt в Eclipse с использованием компилятора Cygwin - PullRequest
5 голосов
/ 13 марта 2012

Я скачал Eclipse с плагином для работы с C / C ++ поверх Windows.Я скачал Cygwin (в основном базовый и devel) и работает нормально для приложения hello world.

Теперь я хочу работать с Qt.Вместо загрузки фреймворка я скачал библиотеки "Qt библиотеки 4.8.0 для Windows (minGW 4.4, 354 МБ)", поскольку другой вариант был тем же для Visual Studio.Я знаю, что это может быть частью проблемы, так как похоже, что это сделано только для компилятора minGW.Если мне нужно сделать что-то по-другому, скажите, пожалуйста.

Затем я перезапустил компьютер, открыл Eclipse, написал этот привет мир Qt для нового приложения C ++ с компилятором Cygwin:

#include <qapplication.h>
#include <qpushbutton.h>

using namespace std;

int main( int argc, char * args[] )
{
    cout << "Here goes!" << endl;

    QApplication app( argc, args );
    QPushButton hello( "Hello World!", 0 );
    hello.resize( 100, 50 );
    app.setMainWidget( &hello );
    hello.show();
    return app.exec();
}

И компилятор не находит включенные файлы .h.Может быть, мне нужно добавить путь Qt \ bin к переменным окружения?

Может быть, мне следует придерживаться каркаса Qt, так как он выглядит как сам компилятор (я действительно не знаю, как это работает, так как вчераЯ думал, что Qt была просто библиотекой.

Пожалуйста, скажите мне, что я делаю неправильно (надеюсь, это не «ВСЕ», хе-хе) и как я могу заставить эту работу работать.

1 Ответ

2 голосов
/ 13 марта 2012

Инфраструктура QT реализует метаязык поверх C ++, который QT использует для создания своей структуры обработки событий (glot qt slots и сигналы для получения дополнительной информации).Стандартные компиляторы, такие как G ++, не понимают этот мета-язык, поэтому его нужно сначала перевести.Вы можете сделать это с помощью Eclipse, сохранив свой собственный make-файл и запустив Meta-Object-Compiler QT поверх кода перед тем, как скомпилировать его (см. эту страницу для получения дополнительной информации).

Мой подход заключается в использовании инструментария QTCreator для вашей компиляции, даже если вы не используете его в качестве IDE.Также рассмотрите возможность использования Eclipse и qmake , которые, если я правильно помню, автоматически используют MOC-переводчик как часть своего процесса.

Удачи!

...