本文介紹如何使用MSVC編譯Qt 5.13.2版本的靜態庫.
1. 下載qt-everywhere-src-5.13.2
Qt離線下載地址:http://download.qt.io/archive/qt/
下載完成之後,解壓到D:\Qt-5.13.2\qt-everywhere-src-5.13.2
目錄。
2. 配置環境變量
將如下內容保存到qtvars.cmd
文件:
REM Set up \Microsoft Visual Studio 2017, where <arch> is \c amd64, \c x86, etc.
CALL "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvarsall.bat" x86
SET _ROOT=D:\Qt-5.13.2\qt-everywhere-src-5.13.2
SET PATH=%_ROOT%\qtbase;%_ROOT%\qtbase\bin;%_ROOT%\gnuwin32\bin;%PATH%
REM Uncomment the below line when using a git checkout of the source repository
REM SET PATH=%_ROOT%\qtrepotools\bin;%PATH%
SET _ROOT=
以管理員權限打開命令提示符,運行qtvars.cmd
文件,運行完之後,不要關閉命令提示符,後面的命令都要在該命令提示符下完成。
3. configure命令
在命令行中進入D:\Qt-5.13.2\qt-everywhere-src-5.13.2
目錄,執行如下configure命令:
configure -prefix D:\Qt-5.13.2\msvc2017_x86_static -static -static-runtime -debug-and-release -platform win32-msvc -opensource -confirm-license -force-debug-info -strip -qt-harfbuzz -qt-freetype -qt-zlib -qt-libpng -qt-libjpeg -qt-pcre -nomake examples -nomake tests -no-dbus -skip qtwebengine -openssl-linked -no-opengl -I C:\OpenSSL-Win32\include -L C:\OpenSSL-Win32\lib
關於configure各個參數的含義可以查看幫助文檔:configure --help
C:\OpenSSL-Win32
中存放OpenSSL的頭文件和靜態庫文件,目錄結構如下:
C:\OpenSSL-Win32\
├─include
│ └─openssl
│ aes.h
│ asn1.h
│ .......
│ .......
└─lib
libcrypto.lib
libssl.lib
4. 編譯、安裝
configure完成以後,使用nmake
命令編譯,最後使用nmake install
命令將生成文件安裝到D:\Qt-5.13.2\msvc2017_x86_static
目錄。