2013-01-03 2 views
2

QT 프로그래밍에 익숙하지 않아 당혹 스럽습니다. 이 질문에 대한 답변을 검색했지만 찾은 답변이 내 문제를 해결하지 못했습니다. 일반적으로 온라인에서 찾은 대답은 내 .pro 파일에 QT += network을 추가하는 것입니다. 그러나 나는 이미 내 .pro 파일에이 문제가 수정되지 않았습니다.QAbstractSocket 해당 파일이나 디렉토리가 없습니다.

제안 사항?

.PRO 파일

QT  += core gui network 

greaterThan(QT_MAJOR_VERSION, 4): QT += widgets 

TARGET = firstproject 
TEMPLATE = app 


SOURCES += main.cpp\ 
    mainwindow.cpp \ 
IB_API_with_Qt/src/IBClient.cpp \ 
IB_API_with_Qt/src/EQtClientSocket.cpp \ 
IB_API_with_Qt/src/EClientSocketBase.cpp 

HEADERS += mainwindow.h \ 
IB_API_with_Qt/include/TwsSocketClientErrors.h \ 
IB_API_with_Qt/include/ScannerSubscription.h \ 
IB_API_with_Qt/include/OrderState.h \ 
IB_API_with_Qt/include/Order.h \ 
IB_API_with_Qt/include/IBClient.h \ 
IB_API_with_Qt/include/Execution.h \ 
IB_API_with_Qt/include/EWrapper.h \ 
IB_API_with_Qt/include/EQtClientSocket.h \ 
IB_API_with_Qt/include/EClientSocketBaseImpl.h \ 
IB_API_with_Qt/include/EClientSocketBase.h \ 
IB_API_with_Qt/include/EClient.h \ 
IB_API_with_Qt/include/Contract.h \ 
IB_API_with_Qt/include/CommonDefs.h 

FORMS += mainwindow.ui 

단순히 말한다 어디에 오류는 헤더 파일에 발생

#include <QAbstractSocket> 

을 그리고 이것은 컴파일 출력이 날을 제공하는 것입니다 :

21:36:05: Running steps for project firstproject... 
21:36:05: Configuration unchanged, skipping qmake step. 
21:36:05: Starting: "C:\Qt\Qt5.0.0\Tools\QtCreator\bin\jom.exe" 
    C:\Qt\Qt5.0.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.0.0\5.0.0\msvc2010\include" -I"..\..\..\..\..\Qt\Qt5.0.0\5.0.0\msvc2010\include\QtWidgets" -I"..\..\.. 
    \..\..\Qt\Qt5.0.0\5.0.0\msvc2010\include\QtGui" -I"..\..\..\..\..\Qt\Qt5.0.0\5.0.0\msvc2010\include\QtCore" -I"debug" 
    -I"." -I"." -I"..\..\..\..\..\Qt\Qt5.0.0\5.0.0\msvc2010\mkspecs\win32-msvc2010" -Fodebug\ @C:\Users\Terence\AppData 
    \Local\Temp\mainwindow.obj.5272.47.jom 
    mainwindow.cpp 
    c:\users\terence\documents\qt projects\firstproject\IB_API_with_Qt/include/IBClient.h(6) : fatal error C1083: Cannot 
    open include file: 'QAbstractSocket': No such file or directory 
    jom: C:\Users\Terence\Documents\QT Projects\firstproject-build-Desktop_Qt_5_0_0_MSVC2010_32bit_SDK-Debug 
    \Makefile.Debug [debug\mainwindow.obj] Error 2 
    jom: C:\Users\Terence\Documents\QT Projects\firstproject-build-Desktop_Qt_5_0_0_MSVC2010_32bit_SDK-Debug\Makefile 
    [debug] Error 2 
21:36:08: The process "C:\Qt\Qt5.0.0\Tools\QtCreator\bin\jom.exe" exited with code 2. 
    Error while building/deploying project firstproject (kit: Desktop Qt 5.0.0 MSVC2010 32bit (SDK)) 
    When executing step 'Make' 
+0

당신이 4보다 큰 QT 버전을 사용하고 있습니까? 그렇다면이 줄에'networkThread (QT_MAJOR_VERSION, 4) : QT + = widgets'을 추가해야 할 수도 있습니다. –

+0

@d_vj 4보다 큰 QT를 사용하고 있지만 그 제안과 여전히 동일한 문제를 시도했습니다 –

+0

'QT Projects' 디렉토리에 공백이있을 수 있습니다. 이것을'QtProjects'와 같은 이름으로 바꾸십시오. http://stackoverflow.com/questions/14095889/the-process-qmake-exe-exited-with-code-2-first-time-with-qt-and-qt-creator – doc

답변

1

프로젝트 경로에 공백이나 비 ASCII 문자가 포함되어 있으면 Qt 빌드가 실패 할 수 있습니다.

Documentation에 공백이있는 디렉토리에 Qt를 설치해서는 안되지만 문서화가 잘되어 있어야하고 프로젝트 경로가 빌드 프로세스에도 영향을 미칠 수 있다고 명시해야한다고 언급합니다.

경로가 프로젝트 경로 (예 : -I"..\..\..\..\..\Qt\Qt5.0.0\5.0.0\msvc2010\include\QtGui)에 상대적으로 설정된 포함 경로로, 공백이 포함되어 있기 때문에 cl에서 헤더를 찾을 수 없습니다.

관련 질문 :
The process qmake.exe exited with code 2 - first time with Qt and Qt Creator

관련 문제