2013-09-30 2 views
0

У меня есть Netbeans 7.3.1, установленный с MingW. Я создал несколько терминальных приложений c/C++, поэтому я уверен, что он работает. Моя трудность связана с QT. Кажется, я не могу скомпилировать мое приложение Qt (default main.cpp).Netbeans 7.3.1 с Qt 4.8.5 - Не удалось скомпилировать

Я установил Qt 5.1.1 для Windows 32-bit (VS 2010, 505 MB) и Qt Creator 2.8.1 для Windows (53 MB) (Info) отсюда http://qt-project.org/downloads.

В netbeans я создал новое приложение C++ -> qt. В свойствах проекта я указываю, что компилятор C++ в qt включает root и компоновщик в qt-библиотеки. Когда я пытаюсь очистить и построить main.cpp по умолчанию: #include

int main(int argc, char *argv[]) { 
    // initialize resources, if needed 
    // Q_INIT_RESOURCE(resfile); 

    QApplication app(argc, argv); 

    return app.exec(); 
} 

Это то, что я получаю. Не совсем уверен в том, что означает эта ошибка:

"/C/msys/1.0/bin/make.exe" -f nbproject/Makefile-Debug.mk QMAKE =/C/Qt/4.8.5/bin/qmake. ехе подпроекты = .Почистить-конф make.exe [1]: Начало каталога /c/Users/Jones/Desktop/QtApplication_1' /C/Qt/4.8.5/bin/qmake.exe VPATH=. -spec win32-g++ -o qttmp-Debug.mk nbproject/qt-Debug.pro mv -f qttmp-Debug.mk nbproject/qt-Debug.mk /C/msys/1.0/bin/make.exe -f nbproject/qt-Debug.mk distclean make.exe[2]: Entering directory/с/Users/Jones/Desktop/QtApplication_1' ет moc_HelloWorld.cpp ет ui_HelloWorld.h ет сборка/Debug/MinGW-Windows/HelloWorld .o build/Debug/MinGW-Windows/main.o build/Debug/MinGW-Windows/moc_HelloWorld.o rm build/Debug/MinGW-Windows/QtApplication_1_resource_res.o rm dist/Debug/MinGW-Windows/QtApplication_1.exe rm: не удается удалить dist/Debug/MinGW-Windows/QtApplication_1.exe': No such file or directory make.exe[2]: [distclean] Error 1 (ignored) rm: cannot remove qttmp-Debug.mk ': Нет такого файла или каталога make.exe [2] : [Distclean] Ошибка 1 (игнорируется) гт qttmp-Debug.mk make.exe [2]: Выход каталога /c/Users/Jones/Desktop/QtApplication_1' make.exe[1]: Leaving directory/C/Users/Jones/Desktop/QtApplication_1'

ОЧИСТИ УСПЕШНОГО (общее время: 663ms)

"/C/msys/1.0/bin/make.exe" -f nbproject/Makefile-Debug.mk QMAKE =/С/Qt/4.8.5/бен/qmake.exe подпроектах = .build-Conf make.exe [1]: Ввод каталога /c/Users/Jones/Desktop/QtApplication_1' /C/Qt/4.8.5/bin/qmake.exe VPATH=. -spec win32-g++ -o qttmp-Debug.mk nbproject/qt-Debug.pro mv -f qttmp-Debug.mk nbproject/qt-Debug.mk "/C/msys/1.0/bin/make.exe" -f nbproject/qt-Debug.mk dist/Debug/MinGW-Windows/QtApplication_1.exe make.exe[2]: Entering directory/c/Пользователи/Jones/Desktop/QtApplication_1 ' c: /Qt/4.8.5/bin/uic.exe ../QtApplication_1/HelloWorld.ui -o ui_HelloWorld.h g ++ -c -pipe -g -frtti -fexceptions -mthreads -Wall -Wextra -DUNICODE -DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_3DNOW -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -DQT_THREAD_SUPPORT -DQT_NEEDS_QMAIN -I '../../../../ Qt/4.8.5/include/QtCore' -I '../../../. ./Qt/4.8.5/include/QtGui '-I' ../../../../ Qt/4.8.5/include '-I' ../../../../ Qt/4.8.5/include '-I' ../../../../ Qt/4.8.5/include/ActiveQt '-I'. ' -Я'.' -Инбпроект '-I'. ' -I '../../../../ Qt/4.8.5/mkspecs/win32-g ++' -o build/Debug/MinGW-Windows/HelloWorld.o ../QtApplication_1/HelloWorld.cpp g ++ -c -g -pipe -frtti -fexceptions -mthreads -Wall -Wextra -DUNICODE -DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_3DNOW -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -DQT_THREAD_SUPPORT -DQT_NEEDS_QMAIN -I»../../../ ../Qt/4.8.5/include/QtCore '-I' ../../../../ Qt/4.8.5/include/QtGui '-I' ../../../ ../Qt/4.8.5/include '-I' ../../../../ Qt/4.8.5/include '-I' ../../../../ Qt /4.8.5/include/ActiveQt '-I'. ' -Я'.' -Инбпроект '-I'. ' -I '../../../../ Qt/4.8.5/mkspecs/win32-g ++' -o build/Debug/MinGW-Windows/main.o main.cpp C: /Qt/4.8 .5/bin/moc.exe -DUNICODE -DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_3DNOW -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -DQT_THREAD_SUPPORT -DQT_NEEDS_QMAIN -I '../../../../ Qt/4.8.5/include/QtCore '-I' ../../../../ Qt/4.8.5/include/QtGui '-I' ../../../../ Qt/4.8.5/include '-I' ../../../../ Qt/4.8.5/include '-I' ../../../../ Qt/4.8.5/include/ActiveQt «Я». -Я'.' -Инбпроект '-I'. ' -I '../../../../ Qt/4.8.5/mkspecs/win32-g ++' -D_ GNUC _ -DWIN32 ../QtApplication_1/HelloWorld.h -o moc_HelloWorld.каст г ++ -c -g -pipe -frtti -fexceptions -mthreads -Wall -Wextra -DUNICODE -DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_3DNOW -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -DQT_THREAD_SUPPORT -DQT_NEEDS_QMAIN -I»../../ ../../Qt/4.8.5/include/QtCore '-I' ../../../../ Qt/4.8.5/include/QtGui '-I' ../../ ../../Qt/4.8.5/include '-I' ../../../../ Qt/4.8.5/include '-I' ../../../. ./Qt/4.8.5/include/ActiveQt '-I'. ' -Я'.' -Инбпроект '-I'. ' -I '../../../../ Qt/4.8.5/mkspecs/win32-g ++' -o build/Debug/MinGW-Windows/moc_HelloWorld.o moc_HelloWorld.cpp windres -i QtApplication_1_resource.rc -o build/Debug/MinGW-Windows/QtApplication_1_resource_res.o --include-dir =. -DUNICODE -DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_3DNOW -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -DQT_THREAD_SUPPORT -DQT_NEEDS_QMAIN г ++ -mthreads -Wl, -subsystem, окна -o расстояние/Debug/MinGW-Windows/QtApplication_1.exe построить/Debug/MinGW-Windows/HelloWorld.o build/Debug/MinGW-Windows/main.o build/Debug/MinGW-Windows/moc_HelloWorld.o -L'c: /Qt/4.8.5/lib '-lmingw32 -lqtmaind build/Debug /MinGW-Windows/QtApplication_1_resource_res.o -lQt3Support4 -lQt3Supportd4 -lQtCLucene4 -lQtCLucened4 -lQtCore4 -lQtCored4 -lQtDeclarative4 -lQtDeclaratived4 -lQtDesigner4 -lQtDesignerComponents4 -lQtDesignerComponentsd4 -lQtDesignerd4 -lQtGui4 -lQtGuid4 -lQtHelp4 -lQtHelpd4 -lQtMultimedia4 -lQtMultimediad4 -lQtNetwork4 -lQtNetworkd4 -lQtOpenGL4 -lQtOpenGLd4 -lQtScript4 -lQtScriptTools4 -lQtScriptToolsd4 -lQtScriptd4 -lQtSql4 -lQtSqld4 -lQtSvg4 -lQtSvgd4 -lQtTest4 -lQtTestd4 -lQtWebKit4 -lQtWebKitd4 -lQtXml4 -lQtXmlPatterns4 -lQtXmlPatternsd4 -lQtXmld4 -lphonon4 -lphonond4 -lQtGuid4 -lQtCored4 Предупреждение: .drectve /DEFAULTLIB:"uuid.lib" /DEFAULTLIB:"uuid.lib" /FAILIFMISMATCH:"_MSC_VER=1600" /FAILIFMISMATCH:"_ITERATOR_DEBUG_LEVEL=2" /DEFAULTLIB:"msvcprtd" /DEFAULTLIB:"MSVCRTD" /DEFAULTLIB:"OLDNAMES" ' unrecognized c:/Qt/4.8.5/lib/qtmaind.lib(tmp/obj/debug_shared/qtmain_win.obj):(.text[[email protected][email protected]@@[email protected]]+0x19): undefined reference to __security_cookie» с:.? /Qt/4.8.5/lib/qtmaind.lib (TMP/объект/debug_shared/qtmain_win.obj) :(текст [перераспределить @ ? $ QVector @ PAD @@ AAEXHH @ Z] + 0x240): неопределенная ссылка на [email protected]' c:/mingw/bin/../lib/gcc/mingw32/4.7.2/../../../../mingw32/bin/ld.exe: c:/Qt/4.8.5/lib/qtmaind.lib(tmp/obj/debug_shared/qtmain_win.obj): bad reloc address 0x240 in section .text [? Realloc @? $ QVector @ PAD @@ AAEXHH @ Z] ' collect2.exe: ошибка: ld возвращен 1 статус выхода make.exe [2]: * [dist/Debug/MinGW-Windows/QtApplication_1.exe] Ошибка 1 make.exe [2]: Каталог останова /c/Users/Jones/Desktop/QtApplication_1' make.exe[1]: *** [.build-conf] Error 2 make.exe[1]: Leaving directory/c/Пользователи/Jones/Desktop/QtApplication_1 ' make.exe ": * [.build-impl] Ошибка 2

BUILD FAILED (значение выхода 2, общее время: 5 секунд)

Я также добавил путь C: \ Qt \ 4.8.5 к переменным окружения и перезапустил рабочую станцию ​​несколько раз. Еще не повезло.

Моя рабочая станция работает под управлением Windows 1.

ответ

1

вы установили Qt для MSVC 2010 7 64 битную пакета обновления, но с использованием MinGW в качестве компилятора. Это не сработает. C++ ABI для MingW и MSVC несовместимы, поэтому их нельзя смешивать. Таким образом, все библиотеки C++ (и основной исполняемый файл), соединенные вместе, должны быть построены с одним и тем же семейством компиляторов/компиляторов. (Это не влияет на библиотеки C). Вам нужно либо использовать MSVC, либо установить Qt для MingW.

+0

В конце используемой Microsoft Visual Studio 2010. Я использовал этот учебник: [ссылка здесь] http://stackoverflow.com/questions/5601950/how-to-build-qt-for-visual-studio-2010 для setup Qt. Я использовал этот флаг: -debug-and-release, а не только -release. Это в значительной степени это сделало. У меня возникли некоторые проблемы, связанные с тем, чтобы он работал с повышением, но в итоге это получилось. – jmreader

Смежные вопросы