1. 程式人生 > >JEFFERY's BLOG

JEFFERY's BLOG

本文編譯環境為: VS2013 + Qt5.5.1

一、準備

  • 安裝VS2013及下載Qt5.5.1原始碼。
  • 安裝ActivePerl,並且將安裝目錄新增到PATH環境變數。
  • 安裝Python,並且將安裝目錄新增到PATH環境變數。
  • 安裝GPerf,並且將安裝目錄/gnuwin32/bin目錄新增到PATH環境變數。
  • 安裝Win flex-bison

二、編譯

2.1 qtvars.cmd

將如下內容儲存到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 12.0\VC\vcvarsall.bat" x86
SET _ROOT=D:\Qt\Qt5.5.1
SET PATH=%_ROOT%\5.5\Src\qtbase;%_ROOT%\5.5\Src\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 QMAKESPEC=win32-msvc2013
SET _ROOT=

以管理員許可權啟動Windows命令列執行qtvars.cmd

2.1 configure

將命令列切換到Qt原始碼所在目錄,執行下面configure命令:

configure -static -debug-and-release -force-debug-info -nomake examples -nomake tests -skip qtwebengine -qt-pcre -openssl-linked -no-opengl -no-angle -opensource -confirm-license -I D:\Qt\Qt5.5.1\OpenSSL-Win32\include -L D:\Qt\Qt5.5.1\OpenSSL-Win32\lib -prefix D:\Qt\Qt5.5.1\Static

2.2 make and install

configure完成之後,執行nmake命令開始編譯,待編譯完之後再執行nmake install命令安裝。

如果修改了configure引數,可以執行nmake distclean命令進行清理,然後再次configure、編譯。

三、使用Qt靜態庫

如果結合Visual Studio的Qt Visual Studio Tools外掛來開發,可以不用自己新增標頭檔案的引用。 Qt Visual Studio Tools外掛的用法參考:Visual Studio + Qt開發環境搭建

下面分別列出了Debug和Release版需要引用的最少的Qt的靜態庫,如果使用到了Qt的其他功能模組(如網路),則需要引用其他的靜態庫(如Qt5Network.lib

3.1 Debug版

Ws2_32.lib
Winmm.lib
Imm32.lib
qtmaind.lib
Qt5Cored.lib
Qt5Guid.lib
Qt5Widgetsd.lib
Qt5PlatformSupportd.lib
qtharfbuzzngd.lib
qtpcred.lib
qtfreetyped.lib
qwindowsd.lib

3.2 Release版

Ws2_32.lib
Winmm.lib
Imm32.lib
qtmain.lib
Qt5Core.lib
Qt5Gui.lib
Qt5Widgets.lib
Qt5PlatformSupport.lib
qtharfbuzzng.lib
qtpcre.lib
qtfreetype.lib
qwindows.lib