Russian Qt Forum

Qt => Установка, сборка, отладка, тестирование => Тема начата: Raziel от Октябрь 27, 2010, 08:44



Название: Не компилится простейшая программа
Отправлено: Raziel от Октябрь 27, 2010, 08:44
Windows 7 x32, Qt SDK 2010.05, Qt Creator.
Вот такая программа:
Код:
#include <QtGui/QApplication>
#include <QtGui/QLabel>

int main(int argc, char *argv[])
{
    QApplication app(argc, argv);
    QLabel *label = new QLabel("Hello Qt!");
    label->show();
    return app.exec();
}
При компиляции выдаёт:
Цитировать
Выполняется сборка проекта HelloQt...
Настройки не изменились, этап qmake пропускается.
Запускается "D:/Qt/2010.05/mingw/bin/mingw32-make.exe" -w
mingw32-make: Entering directory `D:/Qt/Projects/HelloQt-build-desktop'

D:/Qt/2010.05/mingw/bin/mingw32-make -f Makefile.Debug

mingw32-make[1]: Entering directory `D:/Qt/Projects/HelloQt-build-desktop'

g++ -c -g -frtti -fexceptions -mthreads -Wall -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_THREAD_SUPPORT -I"..\..\2010.05\qt\include\QtCore" -I"..\..\2010.05\qt\include" -I"..\..\2010.05\qt\include\ActiveQt" -I"debug" -I"..\HelloQt" -I"." -I"..\..\2010.05\qt\mkspecs\win32-g++" -o debug\main.o ..\HelloQt\main.cpp

g++ -enable-stdcall-fixup -Wl,-enable-auto-import -Wl,-enable-runtime-pseudo-reloc -Wl,-subsystem,console -mthreads -Wl -o debug\HelloQt.exe debug/main.o  -L"d:\Qt\2010.05\qt\lib" -lQtCored4

debug/main.o: In function `main':

D:\Qt\Projects\HelloQt-build-desktop/../HelloQt/main.cpp:9: undefined reference to `_imp___ZN12QApplicationC1ERiPPci'

D:\Qt\Projects\HelloQt-build-desktop/../HelloQt/main.cpp:10: undefined reference to `_imp___ZN6QLabelC1ERK7QStringP7QWidget6QFlagsIN2Qt10WindowTypeEE'

D:\Qt\Projects\HelloQt-build-desktop/../HelloQt/main.cpp:12: undefined reference to `_imp___ZN12QApplication4execEv'

D:\Qt\Projects\HelloQt-build-desktop/../HelloQt/main.cpp:12: undefined reference to `_imp___ZN12QApplicationD1Ev'

D:\Qt\Projects\HelloQt-build-desktop/../HelloQt/main.cpp:12: undefined reference to `_imp___ZN12QApplicationD1Ev'

collect2: ld returned 1 exit status

mingw32-make[1]: Leaving directory `D:/Qt/Projects/HelloQt-build-desktop'

mingw32-make: Leaving directory `D:/Qt/Projects/HelloQt-build-desktop'

mingw32-make[1]: *** [debug\HelloQt.exe] Error 1

mingw32-make: *** [debug] Error 2

Процесс "D:/Qt/2010.05/mingw/bin/mingw32-make.exe" завершился с кодом %2.
Возникла ошибка при сборке проекта HelloQt (цель: Настольный компьютер)
Во время выполнения сборки на этапе "Сборка"
В чём проблема на этот раз?


Название: Re: Не компилится простейшая программа
Отправлено: BRE от Октябрь 27, 2010, 08:47
В том, что ты пытаешься использовать GUI в проекте без GUI.
В .pro файле проекта убери строку:
QT -= gui

и выполни qmake, make


Название: Re: Не компилится простейшая программа
Отправлено: Raziel от Октябрь 27, 2010, 12:21
Спасибо.


Название: Re: Не компилится простейшая программа
Отправлено: steel98 от Февраль 09, 2011, 14:12
Ладно, а у меня тогда в чем дело?

Код:
#include <QtGui>
#include <QtNetwork/QHttp>

using namespace std;

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

    QHttp *http = new QHttp("ya.ru");

    return app.exec();
}

Цитировать
debug/main.o: In function `Z5qMainiPPc':

D:\Qt\2010.05\network-build-desktop/../network/main.cpp:8: undefined reference to `_imp___ZN5QHttpC1ERK7QStringtP7QObject'

collect2: ld returned 1 exit status

mingw32-make[1]: *** [debug\network.exe] Error 1

mingw32-make: *** [debug] Error 2


Название: Re: Не компилится простейшая программа
Отправлено: Пантер от Февраль 09, 2011, 14:15
QT += network


Название: Re: Не компилится простейшая программа
Отправлено: steel98 от Февраль 09, 2011, 14:32
Благодарю, помогло. Почему в Qt Assistant ни слова об этом?


Название: Re: Не компилится простейшая программа
Отправлено: Пантер от Февраль 09, 2011, 14:41
Почему же?
В самом низу (http://doc.qt.nokia.com/4.7/qtnetwork.html)


Название: Re: Не компилится простейшая программа
Отправлено: Странник от Февраль 09, 2011, 14:45
и в документации по qmake этот вопрос рассмотрен..