Windows 7 SDK in Qt Creator 3.0.0 einrichten



  • Hallo,

    da mich das Qt Framework brennend interessiert habe ich mich schon seit einiger Zeit mit dem Qt Creator befasst. Nun wollte ich, neben dem mitgelieferten MinGW-Compiler auch den MSVC2010-Compiler mit dem Creator benutzen. Dazu habe ich die aktuelle Offline-Version '5.2.0-msvc2010-x86' installiert. Anschließend habe ich mir das Windows 7 SDK heruntengeladen und ebenfalls installiert. Nach einem Neustart des Creator hat dieser die SDK-Installation auch erkannt. Leider konnte kein Compiler gefunden werden. Auch diesen habe ich dann als Benutzerdefinierte Konfiguration hinbekommen. Im Einstellungsdialog des Qt-Creator werden keine Fehler angezeigt. Jedoch kann ich nichts kompilieren, da der Vorgang mit folgender Meldung abbricht.

    20:10:19: Führe Schritte für Projekt msvc-test1 aus...
    20:10:19: Starte "C:\Qt\Qt5.2.0\5.2.0\msvc2010\bin\qmake.exe" C:\Users\Administrator\Documents\msvc-test1\msvc-test1.pro -r "CONFIG+=debug" "CONFIG+=declarative_debug" "CONFIG+=qml_debug"
    20:10:19: Der Prozess "C:\Qt\Qt5.2.0\5.2.0\msvc2010\bin\qmake.exe" wurde normal beendet.
    20:10:19: Starte "C:\Program Files\Microsoft Visual Studio 9.0\VC\bin\nmake.exe"
    "C:\Program Files\Microsoft Visual Studio 9.0\VC\bin\nmake.exe" -f Makefile.Debug
    C:\Qt\Qt5.2.0\5.2.0\msvc2010\bin\uic.exe ..\msvc-test1\mainwindow.ui -o ui_mainwindow.h
    C:\Qt\Qt5.2.0\5.2.0\msvc2010\bin\moc.exe -DUNICODE -DWIN32 -DQT_QML_DEBUG -DQT_DECLARATIVE_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_OPENGL_ES_2 -DQT_OPENGL_ES_2_ANGLE -D_MSC_VER=1600 -D_WIN32 -I"..\..\..\..\Qt\Qt5.2.0\5.2.0\msvc2010\include" -I"..\..\..\..\Qt\Qt5.2.0\5.2.0\msvc2010\include\QtWidgets" -I"..\..\..\..\Qt\Qt5.2.0\5.2.0\msvc2010\include\QtGui" -I"..\..\..\..\Qt\Qt5.2.0\5.2.0\msvc2010\include\QtANGLE" -I"..\..\..\..\Qt\Qt5.2.0\5.2.0\msvc2010\include\QtCore" -I"debug" -I"." -I"." -I"..\..\..\..\Qt\Qt5.2.0\5.2.0\msvc2010\mkspecs\win32-msvc2010" ..\msvc-test1\mainwindow.h -o debug\moc_mainwindow.cpp
    cl -c -nologo -Zm200 -Zc:wchar_t -Zi -MDd -GR -W3 -w34100 -w34189 -EHsc -DUNICODE -DWIN32 -DQT_QML_DEBUG -DQT_DECLARATIVE_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_OPENGL_ES_2 -DQT_OPENGL_ES_2_ANGLE -I"..\..\..\..\Qt\Qt5.2.0\5.2.0\msvc2010\include" -I"..\..\..\..\Qt\Qt5.2.0\5.2.0\msvc2010\include\QtWidgets" -I"..\..\..\..\Qt\Qt5.2.0\5.2.0\msvc2010\include\QtGui" -I"..\..\..\..\Qt\Qt5.2.0\5.2.0\msvc2010\include\QtANGLE" -I"..\..\..\..\Qt\Qt5.2.0\5.2.0\msvc2010\include\QtCore" -I"debug" -I"." -I"." -I"..\..\..\..\Qt\Qt5.2.0\5.2.0\msvc2010\mkspecs\win32-msvc2010" -Fodebug\ @C:\Users\ADMINI~1\AppData\Local\Temp\nmAA15.tmp
    NMAKE : fatal error U1077: '"C:\Program Files\Microsoft Visual Studio 9.0\VC\bin\cl.EXE"' : return code '0xc0000135'
    Stop.
    NMAKE : fatal error U1077: '"C:\Program Files\Microsoft Visual Studio 9.0\VC\bin\nmake.exe"' : return code '0x2'
    Stop.
    20:10:19: Der Prozess "C:\Program Files\Microsoft Visual Studio 9.0\VC\bin\nmake.exe" wurde mit dem Rückgabewert 2 beendet.
    Fehler beim Erstellen/Deployment des Projekts msvc-test1(Kit: Desktop Qt 5.2.0 MSVC2010 32bit)
    Bei der Ausführung von Schritt 'Make'
    20:10:19: Verstrichene Zeit: 00:01.

    Ich würde mich sehr über Hilfe freuen um den MSVC2010 Compiler im Qt Creator zum laufen zu bekommen.
    Ich kann leider keine Screenshots hier posten. Evtl. per eMail.

    Vielen Dank,

    Grüße Netzschleicher





  • Ich habe diese Zeilen so wie in dem Link beschrieben eingefügt.
    Nun läuft das Compilieren durch. Allerdings bekomme ich beim Linken dann einen Fehler.
    Wobei mir dieser eher danach aussieht als ob die Librarys nicht kompatibel mit dem Compiler im SDK sind.

    20:30:59: Führe Schritte für Projekt msvc-test1 aus...
    20:30:59: Unveränderte Konfiguration, qmake-Schritt wird übersprungen.
    20:30:59: Starte "C:\Qt\Qt5.2.0\Tools\QtCreator\bin\jom.exe"
    C:\Qt\Qt5.2.0\Tools\QtCreator\bin\jom.exe -f Makefile.Debug
    cl -c -nologo -Zm200 -Zc:wchar_t -Zi -MDd -GR -W3 -w34100 -w34189 -EHsc -DUNICODE -DWIN32 -DQT_QML_DEBUG -DQT_DECLARATIVE_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_OPENGL_ES_2 -DQT_OPENGL_ES_2_ANGLE -I"..\..\..\..\Qt\Qt5.2.0\5.2.0\msvc2010\include" -I"..\..\..\..\Qt\Qt5.2.0\5.2.0\msvc2010\include\QtWidgets" -I"..\..\..\..\Qt\Qt5.2.0\5.2.0\msvc2010\include\QtGui" -I"..\..\..\..\Qt\Qt5.2.0\5.2.0\msvc2010\include\QtANGLE" -I"..\..\..\..\Qt\Qt5.2.0\5.2.0\msvc2010\include\QtCore" -I"debug" -I"." -I"." -I"..\..\..\..\Qt\Qt5.2.0\5.2.0\msvc2010\mkspecs\win32-msvc2010" -Fodebug\ @C:\Users\ADMINI~1\AppData\Local\Temp\main.obj.2748.0.jom
    main.cpp
    C:\Qt\Qt5.2.0\5.2.0\msvc2010\bin\moc.exe -DUNICODE -DWIN32 -DQT_QML_DEBUG -DQT_DECLARATIVE_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_OPENGL_ES_2 -DQT_OPENGL_ES_2_ANGLE -D_MSC_VER=1600 -D_WIN32 -I"..\..\..\..\Qt\Qt5.2.0\5.2.0\msvc2010\include" -I"..\..\..\..\Qt\Qt5.2.0\5.2.0\msvc2010\include\QtWidgets" -I"..\..\..\..\Qt\Qt5.2.0\5.2.0\msvc2010\include\QtGui" -I"..\..\..\..\Qt\Qt5.2.0\5.2.0\msvc2010\include\QtANGLE" -I"..\..\..\..\Qt\Qt5.2.0\5.2.0\msvc2010\include\QtCore" -I"debug" -I"." -I"." -I"..\..\..\..\Qt\Qt5.2.0\5.2.0\msvc2010\mkspecs\win32-msvc2010" ..\msvc-test1\mainwindow.h -o debug\moc_mainwindow.cpp
    cl -c -nologo -Zm200 -Zc:wchar_t -Zi -MDd -GR -W3 -w34100 -w34189 -EHsc -DUNICODE -DWIN32 -DQT_QML_DEBUG -DQT_DECLARATIVE_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_OPENGL_ES_2 -DQT_OPENGL_ES_2_ANGLE -I"..\..\..\..\Qt\Qt5.2.0\5.2.0\msvc2010\include" -I"..\..\..\..\Qt\Qt5.2.0\5.2.0\msvc2010\include\QtWidgets" -I"..\..\..\..\Qt\Qt5.2.0\5.2.0\msvc2010\include\QtGui" -I"..\..\..\..\Qt\Qt5.2.0\5.2.0\msvc2010\include\QtANGLE" -I"..\..\..\..\Qt\Qt5.2.0\5.2.0\msvc2010\include\QtCore" -I"debug" -I"." -I"." -I"..\..\..\..\Qt\Qt5.2.0\5.2.0\msvc2010\mkspecs\win32-msvc2010" -Fodebug\ @C:\Users\ADMINI~1\AppData\Local\Temp\mainwindow.obj.2748.219.jom
    mainwindow.cpp
    cl -c -nologo -Zm200 -Zc:wchar_t -Zi -MDd -GR -W3 -w34100 -w34189 -EHsc -DUNICODE -DWIN32 -DQT_QML_DEBUG -DQT_DECLARATIVE_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_OPENGL_ES_2 -DQT_OPENGL_ES_2_ANGLE -I"..\..\..\..\Qt\Qt5.2.0\5.2.0\msvc2010\include" -I"..\..\..\..\Qt\Qt5.2.0\5.2.0\msvc2010\include\QtWidgets" -I"..\..\..\..\Qt\Qt5.2.0\5.2.0\msvc2010\include\QtGui" -I"..\..\..\..\Qt\Qt5.2.0\5.2.0\msvc2010\include\QtANGLE" -I"..\..\..\..\Qt\Qt5.2.0\5.2.0\msvc2010\include\QtCore" -I"debug" -I"." -I"." -I"..\..\..\..\Qt\Qt5.2.0\5.2.0\msvc2010\mkspecs\win32-msvc2010" -Fodebug\ @C:\Users\ADMINI~1\AppData\Local\Temp\moc_mainwindow.obj.2748.2091.jom
    moc_mainwindow.cpp
    echo 1 /* CREATEPROCESS_MANIFEST_RESOURCE_ID / 24 / RT_MANIFEST / "debug\\msvc-test1.exe.embed.manifest">debug\msvc-test1.exe_manifest.rc
    if not exist debug\msvc-test1.exe if exist debug\msvc-test1.exe.embed.manifest del debug\msvc-test1.exe.embed.manifest
    if exist debug\msvc-test1.exe.embed.manifest copy /Y debug\msvc-test1.exe.embed.manifest debug\msvc-test1.exe_manifest.bak
    link /NOLOGO /DYNAMICBASE /NXCOMPAT /DEBUG /SUBSYSTEM:WINDOWS "/MANIFESTDEPENDENCY:type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' publicKeyToken='6595b64144ccf1df' language='
    ' processorArchitecture='*'" /MANIFEST /MANIFESTFILE:debug\msvc-test1.exe.embed.manifest /OUT:debug\msvc-test1.exe @C:\Users\ADMINI~1\AppData\Local\Temp\msvc-test1.exe.2748.3152.jom
    if exist debug\msvc-test1.exe_manifest.bak fc /b debug\msvc-test1.exe.embed.manifest debug\msvc-test1.exe_manifest.bak >NUL || del debug\msvc-test1.exe_manifest.bak
    if not exist debug\msvc-test1.exe_manifest.bak rc.exe /fodebug\msvc-test1.exe_manifest.res debug\msvc-test1.exe_manifest.rc
    Microsoft (R) Windows (R) Resource Compiler Version 6.1.7600.16385

    Copyright (C) Microsoft Corporation. All rights reserved.

    if not exist debug\msvc-test1.exe_manifest.bak link /NOLOGO /DYNAMICBASE /NXCOMPAT /DEBUG /SUBSYSTEM:WINDOWS "/MANIFESTDEPENDENCY:type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' publicKeyToken='6595b64144ccf1df' language='' processorArchitecture=''" /MANIFEST /MANIFESTFILE:debug\msvc-test1.exe.embed.manifest /OUT:debug\msvc-test1.exe @C:\Users\ADMINI~1\AppData\Local\Temp\msvc-test1.exe.2748.3167.jom
    LINK : fatal error LNK1123: failure during conversion to COFF: file invalid or corrupt <=== hier der Fehler
    jom: C:\Users\Administrator\Documents\build-msvc-test1-Desktop_Qt_5_2_0_MSVC2010_32bit-Debug\Makefile.Debug [debug\msvc-test1.exe] Error 1123
    jom: C:\Users\Administrator\Documents\build-msvc-test1-Desktop_Qt_5_2_0_MSVC2010_32bit-Debug\Makefile [debug] Error 2
    20:31:04: Der Prozess "C:\Qt\Qt5.2.0\Tools\QtCreator\bin\jom.exe" wurde mit dem Rückgabewert 2 beendet.
    Fehler beim Erstellen/Deployment des Projekts msvc-test1(Kit: Desktop Qt 5.2.0 MSVC2010 32bit)
    Bei der Ausführung von Schritt 'Make'
    20:31:04: Verstrichene Zeit: 00:05.

    Ich habe folgende Versionen installiert:
    QT : qt-windows-opensource-5.2.0-msvc2010-x86-offline
    SDK: Microsoft Windows SDK for Windows 7 (7.1.7600.0.30514)(x86)



  • Nachdem mich firely mit den beiden Links versorgt hat, habe ich es nun geschafft im Qt-Creator
    den MSVC2010 Compiler einzubinden und diesen zu benutzen. Durch weitere Recherche läuft das ganz
    nun so gut, das keinerlei Pfadangaben oder sonstige Ergänzungen in den Projekten gemacht werden
    müssen.

    Ich möchte daher meine Vorgehenweise einmal darstellen. Vielleicht kann ich damit dem einen oder
    anderen damit helfen.

    Zuerst muß dafür das 'Windows 7 SDK 7.1' installiert werden. Wichtig ist die Version 7.1, da nur dort
    der MSVC2010 C++ Compiler enthalten ist. Falls sich das SDK nicht installieren lässt, sollte in der
    Systemsteuerung unter 'Programme und Funktionen' nachgesehen werden, ob dort schon
    'MSVC2010 Redistributable Packages' installiert sind. Falls ja, diese deinstallieren, sowohl die 32bit
    als auch die 64bit Version.
    Dann sollte sich das 'Windows 7 SDK 7.1' installieren lassen. Nach der Installation das
    'MSVC2010 Sp1 Compiler Update' installieren. Zum Schluß dann wieder die zuvor deinstallierten
    'MSVC2010 Redistributable Packages' installieren.

    Dann kann man die MSVC2010 QT Librarys installieren. Ich habe dieses mit dem 'QT 5.2.0 1.5 Webinstaller'
    gemacht und damit meine bestehende 'Qt 5.2.0 MinGW4.8' Installation um die 'Qt 5.2.0 MSVC2010' Librarys ergänzt.
    Es gibt auch eine 'Qt 5.2.0 MSVC2010 OpenGL' Library, jedoch weis ich nicht was diese genau anders macht.
    Vielleicht kann dies noch jemand ergänzen und erklären.

    Beim nächsten Start des QT-Creators wird dann das 'Windows 7 SDK 7.1' erkannt und korrekt eingebunden.
    Es müssen keinerlei Pfadangaben oder Umgebungsvariablen manuell gesetzt werden.
    Es können nun neue Projekte mit dem MSVC2010 Compiler ertellt, oder bestehende Projekte auch mit dem
    Microsoft Compiler übersetzt werden. Ich habe dieses an einigen Beispielprojekten mit Erfolg versucht.

    Getestet habe ich dieses unter Windows 7 Professional 64bit.

    Vielen Dank an dieser Stelle an firefly, der mich durch seine Links auf die richtige Spur gebracht hat.

    Grüße Netzschleicher

    Link MSVC2010 Sp1 x86 Redist:
    http://www.microsoft.com/de-de/download/details.aspx?id=8328

    Link MSVC2010 Sp1 x64 Redist:
    http://www.microsoft.com/de-de/download/details.aspx?id=13523

    Link Windows 7 SDK 7.1 Installer:
    http://www.microsoft.com/en-us/download/details.aspx?id=8279

    Link MSVC2010 Sp1 Compiler Update:
    http://www.microsoft.com/de-de/download/details.aspx?id=4422


Anmelden zum Antworten