使用VS2010编译Qt 5.6.1过程记录
由于Qt官方發(fā)布的Qt 5.6.1二進(jìn)制安裝包沒有對應(yīng)VS2010版本的,而我的電腦上只安裝了VS2010,因此只能自己編譯。
本文記錄本人的編譯安裝過程,以及其中遇到的一些問題。
本文使用VS2010 32位編譯Qt 5.6.1。
1. 下載Qt源代碼
Qt源代碼下載地址:https://www.qt.io/download-open-source/
或直接到下載匯總目錄:http://download.qt.io/archive/
其中,Qt 5.6.1的下載目錄為:http://download.qt.io/archive/qt/5.6/5.6.1/
見下圖:
從上圖中可以看到,Qt 5.6.1官方提供的VS版本只有VS2013和VS2015。
由于我的電腦上只有VS2010(至于原因,對我來說VS2010是用得最久的,并且越高的版本的VS占用的空間越大,
微軟的東西實在龐大得嚇人,所以一直沒有更換更高版本的VS),所以只能下載Qt源碼自己編譯。
Qt 5.6.1源碼在上圖中的single目錄中,見下圖:
上圖中的幾個壓縮包的內(nèi)容是一樣的,但是.7z格式的文件是最小的,所以就下載.7z格式的就行啦(前提是你的電腦能解壓.7z格式的壓縮包)。
2. 將Qt源代碼壓縮包解壓
下載后得到qt-everywhere-opensource-src-5.6.1.7z文件。
然后將此壓縮包解壓,此時需要注意解壓到的目錄位置:由于編譯(即執(zhí)行nmake或jom)后得到的文件(包括.prl、.dll等)會攜帶源代碼路徑信息,
所以最好一開始就把源代碼放在一個對的位置,并且編譯后不要移動或刪除。
(注:但執(zhí)行nmake install或jom install后源代碼路徑信息就被去掉了,所以上面一段可以不必在意。)
我之前曾特意為此在虛擬機(jī)中測試安裝了qt-opensource-windows-x86-msvc2015-5.6.1.exe,安裝后安裝目錄的結(jié)構(gòu)如下:
因此,我直接將qt-everywhere-opensource-src-5.6.1.7z解壓到D:\ProgramFiles\Qt\5.6.1\5.6目錄下,
然后將得到的文件夾qt-everywhere-opensource-src-5.6.1重命名為Src。
3. 安裝依賴環(huán)境
根據(jù)Qt 5.6.1源代碼中的README可以知道,編譯Qt 5.6.1之前需要安裝幾個環(huán)境:
- Perl version 5.12 or later [http://www.activestate.com/activeperl/]
- Python version 2.7 or later [http://www.activestate.com/activepython/]
- Ruby version 1.9.3 or later [http://rubyinstaller.org/]
- ICU
Qt 5 can make use of the ICU libraries providing Unicode and Globalization
support (see http://site.icu-project.org/). They are required for building QtWebKit.
On Windows, they need to be manually installed and the "include" and "lib"
folders of the ICU installation must be appended to the INCLUDE and LIB
environment variables after calling the Windows SDK setup script.
The "bin" folder of the ICU installation should be appended to the PATH
environment variable in order to for the DLLs to be found at run-time.
- DirectX SDK (DirectX 9 or 11)
For Qt Quick 2 to work, a graphics driver that provides OpenGL 2.1 or higher is required.
The default driver from Windows is OpenGL 1.1. Qt includes a version of the ANGLE project
which is included from the Windows Qt installers.
ANGLE implements the OpenGL ES 2.0 API on top of DirectX 11 or DirectX 9.
ANGLE requires that the DirectX SDK is installed when building Qt.
于是,我安裝了如下幾項:
- ActivePerl 5.22.1.2201
- Python 2.7.11
- Ruby 2.2.4
- icu4c 54.1
- DXSDK_Jun10
(注:我將ICU安裝壓縮包icu4c-54_1-Win32-msvc10.zip解壓到D:\ProgramFiles\ICU目錄下,
并重命名為icu4c-54_1-Win32-msvc10,即得到D:\ProgramFiles\ICU\icu4c-54_1-Win32-msvc10。下面會用到這個目錄。)
4. 開始編譯安裝
在D:\ProgramFiles\Qt\5.6.1\5.6\Src目錄中新建一個批處理文件,命名為my_build_vs2010_x86.bat,用文本編輯器打開之,編輯內(nèi)容如下:
(注:上面腳本中的編譯步驟使用了Qt Creator的jom工具,如果還未安裝Qt Creator,則需要將上面腳本中的jom替換成nmake。)
上面這個腳本里面已經(jīng)寫了較全面的注釋,在此就不一一解釋了。
然后再在此目錄下新建一個批處理文件,命名為my_build_vs2010_x86_and_log.bat,用文本編輯器打開之,編輯內(nèi)容如下:
其中的mtee是一個用于Windows批處理輸出重定向的一個小工具,可以到此下載,
下載之后安裝,把mtee.exe所在路徑添加到系統(tǒng)Path環(huán)境變量中就可以了。
使用mtee是為了在命令行窗口顯示輸出的同時將過程中的所有輸出記錄到文件。
然后雙擊運行my_build_vs2010_x86_and_log.bat,即可自動完成Qt 5.6.1的編譯和安裝。
運行結(jié)束后得到log文件my_build_vs2010_x86.log即為過程中的所有輸出的記錄。
5. 后續(xù)處理
編譯安裝完成之后,可以直接把源代碼目錄Src刪除。
如果想保留源代碼,可以在源代碼目錄執(zhí)行jom clean或nmake distclean(因為編譯過程在源代碼目錄產(chǎn)生了大量的中間文件),
或者可以將源代碼目錄刪除后重新把之前下載的源代碼壓縮包解壓到相同位置。
最后就是在Qt Creator中配置Qt路徑了,比較簡單,就不再贅述了。
至此,Qt 5.6.1在VS2010平臺下的編譯全部完成。
來自為知筆記(Wiz)
轉(zhuǎn)載于:https://www.cnblogs.com/jloveu/p/build-Qt561-on-VS2010-record.html
總結(jié)
以上是生活随笔為你收集整理的使用VS2010编译Qt 5.6.1过程记录的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: JAVA的SSH框架登录注册
- 下一篇: Struts2的工作原理及工作流程