Netbeans 7.3.1 with Qt 4.8.5 - 无法编译

时间:2013-09-30 15:24:02

标签: c++ qt netbeans-7

我在MingW上安装了Netbeans 7.3.1。我用这个构建了几个c / c ++终端应用程序,所以我很确定它有效。 我的困难在于QT。我似乎无法编译我的Qt应用程序(默认的main.cpp)。

我从这里http://qt-project.org/downloads安装了适用于Windows 32位(VS 2010,505 MB)的Qt 5.1.1和适用于Windows的Qt Creator 2.8.1(53 MB)(信息)。

在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.exe SUBPROJECTS = .clean-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 distclean make.exe[2]: Entering directory / c / Users / Jones / Desktop / QtApplication_1' rm moc_HelloWorld.cpp rm ui_HelloWorld.h rm build / 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(忽略) rm qttmp-Debug.mk make.exe [2]:离开目录/c/Users/Jones/Desktop/QtApplication_1' make.exe[1]: Leaving directory / c / Users / Jones / Desktop / QtApplication_1'

CLEAN SUCCESSFUL(总时间:663ms)

" /C/msys/1.0/bin/make.exe" -f nbproject / Makefile-Debug.mk QMAKE = / C / Qt / 4.8.5 / bin / qmake.exe SUBPROJECTS = .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 / Users / 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 /包含/ QtGui' -I' ../../../../ QT / 4.8.5 /包括' -I' ../../../../ QT / 4.8.5 /包括' -I' ../../../../ QT / 4.8.5 /包含/ ActiveQt可' -I'' -I'' -I' nbproject文件' -I'' -I' ../../../../ QT / 4.8.5 / mkspecs / Win32的克++' -o build / Debug / MinGW-Windows / HelloWorld.o ../QtApplication_1/HelloWorld.cpp 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 /包含/ QtGui' -I' ../../../../ QT / 4.8.5 /包括' -I' ../../../../ QT / 4.8.5 /包括' -I' ../../../../ QT / 4.8.5 /包含/ ActiveQt可' -I'' -I'' -I' nbproject文件' -I'' -I' ../../../../ QT / 4.8.5 / mkspecs / Win32的克++' -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 /包含/ QtGui' -I' ../../../../ QT / 4.8.5 /包括' -I' ../../../../ QT / 4.8.5 /包括' -I' ../../../../ QT / 4.8.5 /包含/ ActiveQt可' -I'' -I'' -I' nbproject文件' -I'' -I' ../../../../ QT / 4.8.5 / mkspecs / Win32的克++' -D_ GNUC _ -DWIN32 ../QtApplication_1/HelloWorld.h -o moc_HelloWorld.cpp 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 /包含/ QtGui' -I' ../../../../ QT / 4.8.5 /包括' -I' ../../../../ QT / 4.8.5 /包括' -I' ../../../../ QT / 4.8.5 /包含/ ActiveQt可' -I'' -I'' -I' nbproject文件' -I'' -I' ../../../../ QT / 4.8.5 / mkspecs / Win32的克++' -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 g ++ -mthreads -Wl,-subsystem,windows -o dist / Debug / MinGW-Windows / QtApplication_1.exe build / 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编译/调试/ MinGW的窗口/ 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[?realloc@?$QVector@PAD@@AAEXHH@Z]+0x19): undefined reference to __ security_cookie' c:/Qt/4.8.5/lib/qtmaind.lib(tmp / obj / debug_shared / qtmain_win.obj):(。text [?realloc @?$ QVector @ PAD @@ AAEXHH @ Z] + 0x240):undefined reference到_CxxThrowException@8' 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。文本[?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 / Users / Jones / Desktop / QtApplication_1' make.exe":* [.build-impl]错误2

BUILD FAILED(退出值2,总时间:5s)

我还将路径C:\ Qt \ 4.8.5添加到环境变量中并多次重新启动工作站。仍然没有运气。

我的工作站正在运行Windows 7 64位Service Pack 1.

1 个答案:

答案 0 :(得分:1)

您为MSVC 2010安装了Qt,但是使用MingW作为编译器。那不行。 MingW和MSVC的C ++ ABI是不兼容的,因此它们不能混合。因此,链接在一起的所有C ++库(和主可执行文件)必须使用相同的编译器/编译器系列构建。 (这不会影响C库)。您需要使用MSVC或为MingW安装Qt。