Visual Studio 2015编译安装配置QT5.5.1(含QTWEBKIT)
2016-01-15 16:50
761 查看
尽管QT5.5.1和VisualStudio2015都已经发布很久了,但是QT项目组视乎不会为QT5.5.1专门发布预编译的QT5.5.1forwindows(2015)版本的,也不会专门发布VisualStudio2015Add-inforQT5.5.1的。而且官方也没有明确的文档指导在visualstudio2015环境下开发QT5应用的开发人员编译和配置相应的环境。
今天我就把自己摸索出来的方法分享出来,希望对大家有所启发。
1.首先,我们到http://www.qt.io/download-open-source/#section-2网站下载http://download.qt.io/official_releases/qt/5.5/5.5.1/single/qt-everywhere-opensource-src-5.5.1.zip源码包,加压源码包到磁盘。
2.由于编译QtWekbit需要ICUandANGLE库,ICU库需要单独下载和编译,从http://download.icu-project.org/files/icu4c/56.1/icu4c-56_1-src.zip下载ICU4Cversion56.1并解压到磁盘,目录位置参见随后说明。
3.在Qt5.5.1的源码包中还存在一个BUG,如果直接编译的话在编译QT3D模块的时候会报没有找到Zlib.h的错误而中断编译,所以参照如下提示修改qt-everywhere-opensource-src-5.5.1\qt3d\src\3rdparty\assimp目录下的assimp.pri文件。可参考地址https://codereview.qt-project.org/#/c/127252/3/src/3rdparty/assimp/assimp.pri。
4.在编译QT5.5.1之前还需要安装配置一下的工具和环境:
lActivePython2.7orlater
lPerl
lRuby
lcygwin
今天我就把自己摸索出来的方法分享出来,希望对大家有所启发。
1.首先,我们到
2.由于编译QtWekbit需要
3.在Qt5.5.1的源码包中还存在一个BUG,如果直接编译的话在编译QT3D模块的时候会报没有找到Zlib.h的错误而中断编译,所以参照如下提示修改qt-everywhere-opensource-src-5.5.1\qt3d\src\3rdparty\assimp目录下的
4.在编译QT5.5.1之前还需要安装配置一下的工具和环境:
l
l
l
l
我安装使用的是Python3.5,strawberry-perl-5.22.0.1-64bit.msi(64bit),rubyinstaller-2.2.3-x64.exe(x64)和cygwin64,其中cygwin安装配置选择以下的内容:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 | Archive unzip xz zip Devel autoconf automake binutils cmake cvs cygwin64-libiconv gcc-core gcc-g++(3.4.4-3) gdb gettext-devel git git-completion libtool make mingw-binutils mingw-gcc-core mingw-gcc-g++ mingw-pthreads mingw-runtime mingw-w32api mingw64-i686-binutils mingw64-i686-gcc-core mingw64-i686-g++ mingw64-i686-pkgconfig mingw64-i686-runtime mingw64-x86_64-binutils mingw64-x86_64-gcc-core mingw64-x86_64-g++ mingw64-x86_64-pkg-config mingw64-x86_64-runtime nasm patch patchutils pkg-config subversion Editor vim Libs crypt expat libgcrypt-devel libgcrypt20 Zlib Net curl openssh Text gettext Utils cygutils-extra dos2unix Web wget |
5.经过上面的步骤可以开始进行编译ICU4Cversion56.1和QT5.5.1的源码了,注意在编译前需要检查以下两点:
l预留20G的磁盘空间用以存放编译生成的中间文件和目标文件,否则会出现编译错误
l文件存放的路径结构如下面的图示,然后打开CMD命令窗口运行我提供的运行脚本,X64系统的运行
build-x64.bat
,否则运行build-x86.bat.
├──build-x64.bat
├──build-x86.bat
├──icu
│└──source
│├──...
│└──configure
└──qt-everywhere-opensource-src-5.5.1
├──...
└──configure
以我的机器的x64版本的build-x64.bat文件为例,具体内容如下:
REMSetup\MicrosoftVisualStudio2015
CALL"H:\MicrosoftVisualStudio14.0\VC\vcvarsall.bat"amd64
ECHOON
SET_CD=%CD%
SET_PATH=%PATH%
SETICU_SOURCE=%_CD%\icu\source
SETICU_DIST=%_CD%\icu\dist-64
SETQT_SOURCE=%_CD%\qt-everywhere-opensource-src-5.5.1
SETQT_BUILD=%_CD%\msvc2015_64
SETQT_DIST=H:\Qt\Qt5.5.1\msvc2015_64
REMBuildingICU
RD/s/q%ICU_SOURCE%\lib
RD/s/q%ICU_SOURCE%\bin
RD/s/q%ICU_DIST%
SETPATH=%PATH%;C:\cygwin64\bin
CD/D%ICU_SOURCE%
dos2unix*
dos2unix-fconfigure
for/F%%Pin('cygpath-u%ICU_DIST%')dobashrunConfigureICUCygwin/MSVC-prefix=%%P
makeclean
make&&makeinstall
CD/D%_CD%
SETPATH=%_PATH%
SETPATH=%PATH%;%ICU_DIST%\bin;%ICU_DIST%\lib
SETINCLUDE=%INCLUDE%;%ICU_DIST%\include
SETLIB=%LIB%;%ICU_DIST%\lib
REMBuildingQt
SETPATH=F:\Strawberry\c\bin;F:\Strawberry\perl\site\bin;F:\Strawberry\perl\bin;%PATH%
CALLF:\Ruby22-x64\bin\setrbvars.bat
ECHOON
SETPATH=%QT_SOURCE%\qtbase\bin;%QT_SOURCE%\gnuwin32\bin;%PATH%
REMUncommentthebelowlinewhenusingagitcheckoutofthesourcerepository
REMSETPATH=%QT_SOURCE%\qtrepotools\bin;%PATH%
SETQMAKESPEC=win32-msvc2015
RD/s/q%QT_BUILD%
MKDIR%QT_BUILD%
CD/D%QT_BUILD%
CALL%QT_SOURCE%\configure-confirm-license-prefix%QT_DIST%-mp-debug-and-release-icu-nomakeexamples-nomaketests-skipqtwebkit-examples-opensource
ECHOON
nmake&&nmakeinstall
CD/D%_CD%
COPY/V/Y%ICU_DIST%\lib\icudt56.dll%QT_DIST%\bin\
COPY/V/Y%ICU_DIST%\lib\icuin56.dll%QT_DIST%\bin\
COPY/V/Y%ICU_DIST%\lib\icuuc56.dll%QT_DIST%\bin\
6.如果以上的配置都正确的话开机让机器编译几个小时后就可以在目标路径下生成QT5.5.1的运行文件。如果要在vs2015集成环境中开发QT5.5.1应用需要在vs2015环境中安装相应的插件并进行配置,由于QT项目组没有提供相应的插件,所以网上很少看到有相应的配置案例。还好微软提供了一个插件叫做Qt5Package,他和原生的plugin提供相似的功能。anExtension(
Tools>Extensions&Updates)calledQt5Packagewhichhasthesamefunctionality.Qt5Package的下载地址为:
7.打开vs2015,菜单栏会多一项QT5,点击QT5下的qtoption,把第5步生成的目标文件添加的环境变量加进去
点击Add把qt的安装路径加进去我的是H:\Qt\Qt5.5.1\msvc2015_64,之后在我的电脑上点击右键-》属性-》高级系统设置-》高级里的环境变量添加环境变量PATH-->H:\Qt\Qt5.5.1\msvc2015_64\bin
完成后就可以新建Qt的工程了
文中使用的编译脚本参见下载地址: