2012-05-03 17 views
7

Właśnie pobrałem Qt SDK 4.8.1 i, po zainstalowaniu, po prostu próbowałem skompilować domyślny projekt C++, ale dostałem ten dziwny błąd.Qt - Błąd 2 w czasie kompilacji

16:50:24: Bieganie budować kroki dla testu projektu ...
16:50:24: Konfiguracja bez zmian, omijając etap QMake.
16:50:24: Począwszy od "C: \ QtSDK \ QtCreator \ bin \ jom.exe"
cl -c -nologo-Zm200 -Zc: wchar_t- -Zi -MDd -GR -EHsc -W3 -w34100 -w34189 -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -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 -I”........ \ QtSDK \ Pulpit \ Qt \ 4.8.1 \ msvc2008 \ include \ QtCore "-I" ........ \ QtSDK \ Desktop \ Qt \ 4.8.1 \ msvc2008 \ include \ QtGui "-I" ........ \ QtSDK \ Desktop \ Qt \ 4.8.1 \ msvc2008 \ include "-I" ........ \ QtSDK \ Desktop \ Qt \ 4.8.1 \ msvc2008 \ include \ ActiveQt "-I" debugowanie "-I". " -I ".. \ test" -I "." -I "........ \ QtSDK \ Desktop \ Qt \ 4.8.1 \ msvc2008 \ mkspecs \ win32-msvc2008" -Fodebug \ @C: \ DOCUME ~ 1 \ dfuser \ IMPOST ~ 1 \ Temp \ main .obj.1464.0.jom
cl -c -nologo -Zm200 -Zc: wchar_t- -Zi -MDd -GR -EHsc -W3 -w34100 -w34189 -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -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 -I "........ \ QtSDK \ Desktop \ Qt \ 4.8.1 \ msvc2008 \ include \ QtCore" -I "........ \ QtSDK \ Desktop \ Qt \ 4.8.1 \ msvc2008 \ include \ QtGui "-I" ........ \ QtSDK \ Desktop \ Qt \ 4.8.1 \ msvc2008 \ include "-I" ....... . \ QtSDK \ Desktop \ Qt \ 4.8.1 \ msvc2008 \ include \ ActiveQt "-I" debugowanie "-I". " -I ".. \ test" -I "." -I "........ \ QtSDK \ Desktop \ Qt \ 4.8.1 \ msvc2008 \ mkspecs \ win32-msvc2008" -Fodebug \ @C: \ DOCUME ~ 1 \ dfuser \ IMPOST ~ 1 \ Temp \ mainwindow .obj.1464.0.jom
C: \ QtSDK \ Qt Creator \ bin \ jom.exe -f Makefile.Debug
Jom: C: \ Documents and Settings \ dfuser \ Pulpit \ build-desktop-test-Qt_4_8_1_for_Desktop_- MSVC2008 _Qt_SDK__Debug \ Makefile.Debug [debug \ main.obj] błąd 2

Jom 1.0.8 - Empower rdzenie

Jom: C: \ Documents and Settings \ dfuser \ Pulpit \ test-Build- desktop-Qt_4_8_1_for_Desktop_- MSVC2008 _Qt_SDK__Debug \ Makefile [debug] Błąd 2
16:50:24: Proces "C: \ QtSDK \ QtCreator \ bin \ jom.exe" zakończył się kodem 2.
Błąd podczas budowania testu projektu (cel: Desktop)
Podczas wykonywania budować krok Make

Czy ktoś wie co jest przyczyną?

Nie wiem, czy jest to istotne, czy nie, ale przed otrzymaniem tego błędu dostałem wspólny błąd o numerze cl ani go nie znaleziono; Rozwiązałem dodawanie ścieżki do cl w ustawieniach projektu.

+0

Może przy użyciu kompilatora minigw pomoże. Widzę, że używasz msvc –

+0

@denonth Tak, używam msvc. Czy możesz wyjaśnić dalej, jak używać minigw? – user1372813

Odpowiedz

0

Dobrze, możesz to zrobić.

idź do Start-> Wybierz Qt Teczki> minigw

Po jej uruchomieniu zostanie załadowany int cmd, potem zlokalizować swój projekt. Wtedy można wpisać: QMake a potem zrobić a następnie zbudowali projekt

Jeśli to nie działa, spróbuj przejść koryta DOCUMENTATION, aby zobaczyć, jak korzystać minigw gdy używasz Qt.

Jeśli potrzebujesz pomocy, daj mi znać, chętnie Ci pomożemy.

EDYTOWANIE:

Jeszcze jedno. W twoim pytaniu problem może być związany ze zmiennymi środowiskowymi. Ponieważ prawdopodobnie nie są ustawione na wyświetlanie komendy make. Jeśli nie chcesz kłopotać się minigwem, możesz sprawdzić zmienne środowiskowe, jeśli ustawiono ścieżkę: zrobić

+0

Czy próbowałeś czegoś? –

5

Rozwiązałem to: spróbuj wykonać bezpośrednio cl.exe (C: \ Program Files (x86) \ Microsoft Visual Studio 10.0 \ VC \ bin \ cl) jeśli pojawi się błąd dll, to dlatego, że twoje środowisko nie jest ustawione poprawnie. Musisz więc zadzwonić do vcvarsall.bat przed lunchem QtCreator. Aby to zrobić, że za każdym razem, można utworzyć plik .bat, który zawiera następujące elementy:

C: \ Program Files (x86) \ Microsoft Visual Studio 10.0 \ VC \ vcvarsall.bat

{} Ścieżka do Qt Creator \ Qt Creator

(poprawne ścieżki czy konfiguracja nie jest taka sama)

będziesz musiał wykonać ten skrypt, aby uzyskać Qt Creator z odpowiednich zmiennych środowiskowych, w przeciwnym razie pojawi się błąd dll, ale nie podano, a otrzymujesz "Błąd: 2"

+0

Obecny twórca Qt powinien uruchomić to automatycznie, sprawdź opcje Projekty/Kit/Kompilator. Moim problemem był wpis QMAKE_EXTRA_TARGETS w pliku .pro (uruchamianie pliku wykonywalnego, prawdopodobnie problemu dotyczącego ścieżki, jeszcze nie sprawdziłem). – handle

+0

Błąd odejdzie po przełączeniu z powrotem do nmake w opcjach zestawu. Zobacz także https://bugreports.qt.io/browse/QTCREATORBUG-6546 – handle

+0

Niezwiązany z błędem: upewnij się, że próbujesz uruchomić cel ręcznie, aby zobaczyć przyczynę błędu ... Powodzenia – handle

2

Miałem nieco podobny problem w Qt 5.3

21:22:03: Running steps for project Server... 
21:22:03: Configuration unchanged, skipping qmake step. 
21:22:03: Starting: "C:\Qt\Qt5.3.2\Tools\mingw482_32\bin\mingw32-make.exe" 
C:\make\bin; -f Makefile.Debug 
Makefile:34: recipe for target 'debug' failed 
process_begin: CreateProcess(NULL, C:\make\bin; -f Makefile.Debug, ...) failed. 
make (e=2): The system cannot find the file specified. 

mingw32-make: *** [debug] Error 2 
21:22:05: The process "C:\Qt\Qt5.3.2\Tools\mingw482_32\bin\mingw32-make.exe" exited with code 2. 
Error while building/deploying project Server (kit: Desktop Qt 5.3 MinGW 32bit) 
When executing step "Make" 

Zrobiłem co następuje, aby pozbyć się błędu.
Z lewym panelu Qt,

Projects > Build > Build Environment: 

Check the Clear System environment 
+0

Dzięki, że naprawia to. – Borzh

0

W terminalu Linux:

sudo apt-get install build-essential cmake libqt4-dev 

przykro mi, że nie wiem, dlaczego ten kod działa, ale miałem ten sam problem w Linuksie i Rozwiązałem to w ten sposób.

Powiązane problemy