2016-11-16 4 views
1

Windows에서 32 비트 및 64 비트 QT 5.7 MSVC 2015 정적 빌드를 사용하는 데 문제가 있습니다. 이 내가 실행 명령과 나는 (물론 32 비트 테스트)받을 출력은 다음과 같습니다 여기 QT 5.7 MSVC 2015 정적 빌드가 작동하지 않습니다.

C:\Users\Josh>set PATH=C:\Qt\static\Qt 5.7.0 MSVC2015_Static_x64\bin;%PATH% 

C:\Users\Josh>cd "\Users\Josh\Mozy Sync\ReplicatorNew\ReplicatorNew" 

C:\Users\Josh\Mozy Sync\ReplicatorNew\ReplicatorNew>qmake ReplicatorNew.pro 
Could not find qmake configuration file win32-msvc2015. 
Error processing project file: ReplicatorNew.pro 

은 QT의 정적을 구성하는 나는 그 다음 단계는 것은 빌드 :

  1. 다운로드 한 QT 5.7 소스를 자체 디렉터리에 압축이 풀립니다.
  2. QT Creator 및 msvc2015 32 및 64 비트가 설치된 QT.
  3. 모든 Visual C++ 옵션이 설치된 Visual Studio 2015 Community가 으로 확인되었습니다.
  4. Strawberry Perl 32 비트가 설치되어 경로에 추가되었습니다.
  5. 설치되어있는 Python 2.7.12 및 경로에 추가되었습니다.
  6. Ruby를 설치하고 경로에 추가했습니다.
  7. Windows 10 SDK가 설치되어 있고 설치시 모든 옵션이 선택되어 있습니다.
  8. jom을 자체 디렉토리에 설치했습니다.
  9. 다운로드 된 openssl 소스이며 here으로 빌드되었습니다. 다음
  10. 편집은 qtbase \ mkspecs \ 공통 \의 MSVC-desktop.conf :

    cd "\Program Files (x86)\Microsoft Visual Studio 14.0\vc" 
    vcvarsall.bat x86 
    
  11. 이 64 비트 :

    QMAKE_CFLAGS_RELEASE = -O2 -MT 
    QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += -O2 -MT -Zi 
    QMAKE_CFLAGS_DEBUG  = -Zi -MTd 
    
  12. 32 비트이 도망

    cd "\Program Files (x86)\Microsoft Visual Studio 14.0\vc" 
    vcvarsall.bat amd64 
    
  13. 다음 :

    비트

    configure -debug-and-release -confirm-license -platform win32-msvc2015 -opengl desktop -static -target xp -nomake examples -no-compile-examples -nomake tests -prefix C:\Qt\static\MSVC2015_Static_x86 -openssl -L C:\OpenSSL-win32\lib -l libeay32 -l ssleay32 -I C:\OpenSSL-win32\include -qt-libpng -qt-libjpeg -qt-zlib 
    
  14. 64 : : 그런 다음이 실행

    configure -debug-and-release -confirm-license -platform win32-msvc2015 -opengl desktop -static -nomake examples -no-compile-examples -nomake tests -prefix C:\Qt\static\MSVC2015_Static_x64 -openssl -L C:\OpenSSL-win64\lib -l libeay32 -l ssleay32 -I C:\OpenSSL-win64\include -qt-libpng -qt-libjpeg -qt-zlib 
    
  15. :

    C:\Qt\static\jom_1_1_1\jom.exe -j 4 
    C:\Qt\static\jom_1_1_1\jom.exe -j 4 install 
    

은 또한 확실히 승리를 확인 32 비트에 대한

set QMAKESPEC=win32-msvc2015 
set QTDIR=C:\Qt\Static\qt-everywhere-enterprise-src-5.7.0\qtbase 
set PATH=C:\Qt\Static\qt-everywhere-enterprise-src-5.7.0\qtbase\bin;%PATH% 
cd C:\Qt\Static\qt-everywhere-enterprise-src-5.7.0 
  • 32-msvc2015는 정적 빌드 디렉토리의 mkspecs 디렉토리에 있습니다. Qt 정적 디렉토리의 이름을 첫 번째 코드 스 니펫의 이름으로 변경했습니다. Google에서 많은 것을 찾을 수 없었으므로 여기에 도움을 요청하여 게시합니다. 감사. 나는 경로 환경 변수를 넣기 위해 디렉토리를 빠뜨린 것처럼 간단 할 것으로 기대하고있다. ...

  • +0

    # 2, # 7 및 # 10 단계는 필요하지 않습니다. XP 용 MSVC를 설정해야합니다. [명령 줄에서 대상 지정] (https://blogs.msdn.microsoft.com/vcblog/2012/10/08/windows-xp-targeting-with-c-in-visual) -studio-2012 /)를 참조하십시오. 13 번 단계 1 ~ 3 단계는 불필요합니다. –

    +0

    또한 Qt 설치 **를 이동하지 마십시오 ** : 작동하지 않습니다. Qt를위한'jom install' 후, 접두어는 그대로 있어야합니다. 'qmake -query'가 올바른 경로를 반환하는지 확인하십시오. 또한'.pro' 파일이 정상적인지 확인하십시오. 아마도 간단한 Qt 예제를 먼저 빌드하십시오. –

    +0

    나는 당신이 불필요한 단계에 관한 몇 가지 질문이 있습니다 : 우리가 -opengl desktop 또는 -opengl dynamic으로 컴파일한다면 7 단계에서 windows 10 SDK에 포함 된 directx sdk가 필요합니까? 10 단계에서 mkspecs 파일을 편집하기 위해 -static-runtime 인수를 사용하여 구성해야합니까, 아니면 구성하여 자동으로 처리합니까? –

    답변

    2

    내가 깬 빌드 후에 QT 정적 빌드 디렉토리의 이름을 바꿨다. 빠른 수정 : 원래 configure -prefix 이름으로 이름을 바꿉니다. 쿠바에 감사드립니다!