msvc2015 編譯Qt原始碼
阿新 • • 發佈:2019-01-04
前言
Qt原始碼編譯有很多選項:目標platforms,編譯靜態庫或者動態庫,skip某個功能模組等選項。本文主要介紹在Win 10 x64平臺下使用visual studio 2015 編譯Qt 5.9原始碼的流程。
1.原始碼下載
原始碼獲取有兩種方式:1.直接下載,下載地址:http://download.qt.io/archive/qt/,2.git clone Qt原始碼,倉庫地址:https://code.qt.io/qt/qt5.git。推薦使用git克隆的方式,這樣在編譯生成目標庫時,你可以通過git清楚的瞭解到檔案變化情況。git clone步驟:1.git clone https://code.qt.io/qt/qt5.git。2.cd qt5。3.git checkout 版本。4.git submodule update --init --recursive。2.編譯工具安裝
(1)下載安裝visual studio 2015 (3)安裝Python,推薦使用Python 2.x版本,因為Python 3.x與Python 2.x在一些方法上有改動, 例如print方法 ,Qt使用的 是Python 2.x的API,下載地址:https://www.python.org/downloads/,安裝並設定PATH。3.配置編譯選項
在開始選單裡進入Visual Studio 2015資料夾,開啟“VS2015 x64本機工具人員命令提示符”,進入cmd視窗模式:1.cd 下載的Qt原始碼目錄;2.執行congigure -prefix E:\\QtSource\build -release -opensource -static -force-debug-info4.configure引數說明
-prefix 生成目標庫的目錄 -release 生成release版本 -debug 生成debug版本 -debug-and-release生成debug和release版本 -opensource 編譯開源版 -commercial 編譯商業版 (引數可選) -static 生成靜態庫lib檔案 -shared 生成動態庫dll檔案 (引數可選,預設是shared)/*** 注:靜態庫與動態庫區別是在生成目標檔案的連結方式上,靜態庫採用靜態連結,在生成的目標檔案(如.exe檔案)中會包含庫檔案程式碼,而動態庫在程式編譯時並不會被連線到目的碼中,而是在程式執行時才被載入。***/-platform win32-msvc 目標庫執行平臺
-skip 跳過該模組 -nomake 不編譯該模組 -mp 啟動多核編譯 注:-skip和-nomake都可省略,但是-skip qtwebengine這個引數不能省略,qtwebengine模組有需要依賴的庫,這裡不跳過編譯會失敗。