不廢話,直接開幹!這裡我用的系統是win10,win7沒有試過,不保證可行.首先安裝好vs2017,Ruby,Perl,Python,這些網上都教程.很簡單的,這裡就略過,還有不會的看之前發的MinGW版的Qt編譯過程,參考一下下.
下載qt-everywhere-src-5.10.1的壓縮包,解壓後,在源碼路徑下面找到qtbasemkspecscommonmsvc-desktop.conf,再找到這下面幾行:
QMAKE_CFLAGS_RELEASE = $$QMAKE_CFLAGS_OPTIMIZE -MD
QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_OPTIMIZE -MD -Zi
QMAKE_CFLAGS_DEBUG = -Zi -MDd
對應的修改成:
QMAKE_CFLAGS_RELEASE = $$QMAKE_CFLAGS_OPTIMIZE -MT
QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_OPTIMIZE -MT -Zi
QMAKE_CFLAGS_DEBUG = -Zi -MTd
其實這一步就是把MD的編譯選項改成MT而已.另外,如果是用vs2017(vs2015也一樣)編譯qt5.10.1,還有兩個地方要修改(貌似新的qt5.12.1已經把這兩個地方改過來了). 在源碼檔案下找到:qtbasemkspecscommonmsvc-version.conf.見下圖:

改成:
還一個地方
改成:
修改好了以後就打開x64 Native Tools Command Prompt for VS 2017(如果一會執行起來有問題,就退回這一步以管理員身份打開),然後執行C:Program Files (x86)Microsoft Visual Studio2017CommunityVCAuxiliaryBuildvcvars64.bat,這是vs編譯工具鏈的環境設置.如圖:
接下來,執行qt的configure配置。這裡,不要編譯qtwebengine,因為qtwebengine的代碼有問題,會編譯錯誤,也不要編譯qtquick1,這個都已經被qt丢棄了.編譯它還會報錯.
cd F:qt-everywhere-opensource-src-5.10.1
建立一個用於編譯的檔案夾並打開:
mkdir qt-build && cd qt-build
然後去配置Qt
..configure.bat -skip qtwebengine -skip qtquick1 -confirm-license -opensource -debug-and-release -nomake tests -nomake examples -prefix F:Qt5.10.1_x64
如圖:
完成之後,執行nmake,這裡就建議把nmake重定向文本去,因為cmd視窗保留的記錄太短了,要是編譯有錯誤在文本檔案裡面也可以看到.
nmake > nmake.out.txt 2>&1
這就一路等它編譯完成.然後執行nmake install
上一篇MinGW編譯64位Qt裡漏了把Qt的Doc也編譯安裝這裡補上,方法類似,隻是nmake改成mingw32-name而已.
Qt的幫助文檔也簡單,就兩行指令
nmake docs
等它編譯完,執行:
nmake install_docs
這就全搞定了.