I usually avoid writing articles about building a specific version of a software project but this time I need to archive it for later use and I believe it’s useful to my fellow programmers.

Despite it’s been released for a while already, it seems the Qt project won’t release binaries prebuilt with Visual Studio 2015 until Qt 5.6 is out. That is to say, somewhere between today and say January, 2016 (blind guess). At work, we’re transitioning from Visual Studio 2012 to Visual Studio 2015 and some projects depend on Qt. That’s why I decided to bite the bullet.

I have to say that I found Qt’s official building from source instructions rather vague. Let the treasure hunt begin.

I first stumbled upon the Qt for Windows - Building from Source page which itself links to the Qt for Windows - Requirements page. The requirements page mentions the ICU and ANGLE libraries. ICU is needed when building QtWekbit and ANGLE is what Qt uses by default for its official Windows builds. To build ANGLE, the requirements page implies you have to install the Direct X SDK. Don’t panic if you don’t find the download for that SDK: it’s been a long time since that SDK ships as part of the Windows SDK itself, which you install along with Visual Studio 2015.

At that point, I felt alone but that didn’t last long. I joined #qt on Freenode and asked around. Someone mentioned theBuilding Qt 5 from Git page on Qt’s wiki which indirectly points to the Compiling ICU with MSVC page.

I decided to go with ICU4C version 54.1 as instructed in the wiki page. However, this version needs to be patched in order to build with Visual Studio 2015: I opened source/io/ufile.c at line 66 and replaced:

#if U_PLATFORM_USES_ONLY_WIN32_API

by

#if U_PLATFORM_USES_ONLY_WIN32_API && _MSC_VER < 1900

Then, I proceeded with building ICU as explained in Qt’s wiki.

As for ANGLE, it turns out Qt bundles its own version and there’s nothing to do. Qt’s configure script will just detect and use it.

QtWebkit now. The Building Qt 5 from Git page tricks you into visiting the official Build Instructions for the QtWebKit build on Windows page on Webkit’s wiki. Just don’t go there. It’s just adding more confusion. You don’t have to build QtWebkit yourself, it’s going to be built as part of Qt’s build provided you installed the proper prerequisites.

Before proceeding with building Qt (with QtWebkit), all you need is to do is installing the following tools (listed on theBuilding Qt 5 from Git page):

Those tools have to be in your %PATH% environment variable as well as Qt’s gnuwin32\bin directory which providesbisonflex and gperf.

I decided to install Active Python 2.7, Strawberry Perl 5.22.0.1 (64 bit) and RubyInstaller 2.2.3 (x64).

Finally, Qt 5.5.1’s source drop shipped with a bug that despite having been opened against RC1 was resolved as “works on our machines, SHIP IT!” :D Hopefully, resolution is quite easy, I just patched src/3rdparty/assimp/assimp.pri.

After all those steps, I successfully built Qt 5.5.1 with QtWebkit with Visual Studio 2015. To help you out, I prepared two Windows batch files: build-x64.bat and build-x86.bat. Create a directory somewhere on your computer and make sure you come up with the following directory structure:

.
├── build-x64.bat
├── build-x86.bat
├── icu
│   └── source
│   ├── ...
│   └── configure
└── qt-everywhere-opensource-src-5.5.1
   ├── ...
└── configure

Finally, open a CMD.exe prompt, cd to the directory containing the .bat files and launch either build-x64.bat orbuild-x86.bat

Hope that helps!

http://files.cnblogs.com/files/findumars/qt5.51_webkit_build.rar

http://pempek.net/articles/2015/10/18/compiling-qt-5-5-1-with-visual-studio-2015/

Compiling Qt 5.5.1 (With Qtwebkit) With Visual Studio 2015的更多相关文章

  1. Visual Studio 2015编译安装配置QT5.5.1(含QTWEBKIT)

    尽管QT5.5.1和VisualStudio 2015都已经发布很久了,但是QT项目组视乎不会为QT5.5.1专门发布预编译的QT5.5.1 for windows(2015)版本的,也不会专门发布V ...

  2. Visual Studio 2015开发Qt项目实战经验分享(附项目示例源码)

    Visual Studio 2015开发Qt项目实战经验分享(附项目示例源码)    转 https://blog.csdn.net/lhl1124281072/article/details/800 ...

  3. Setup QT 5.5.1 + OpenCV 3.0 + Visual Studio 2013 on windows 10

    1. Install Visual studio 2013 community version which is free to use for personal usage. 2. Setup th ...

  4. 使用 Visual Studio 2015 编译 QT 工程

    简单进行一下几步就可以了 1.下载源代码 qt-everywhere-opensource-src-5.6.0-alpha.7z .解压到 D:\ToolKits\5.6.0\src 目录下2.网站 ...

  5. Visual Studio + Qt开发环境搭建

    1. 安装Visual Studio 2015 Visual Studio 2015下载地址如下,安装比较常规,不做介绍. Visual Studio Enterprise 2015 with Upd ...

  6. Qt Visual Studio Add-in 导出的 .pri 怎么用?

    今天咱们介绍一下 Qt Add-in 导出的 pri 文件怎么用.   一般需要导出这个文件, 主要应该是跨平台编译的需求, 所以这个文件里包含的东西会比较少, 咱们看下导出的文件是什么样子的: # ...

  7. Qt环境搭建(Qt Creator)+Visual Studio

    1.http://www.cnblogs.com/ranjiewen/p/5318768.html 简述 经常有人问我编写Qt程序时使用什么IDE,其实这个真的很难回答(各有所长),只能说看个人爱好了 ...

  8. qt 4.6.2 与visual studio 2005 集成(编译方法,以及中间遇到的问题)

    不知不觉在蒂森差不多半个月了,哈哈,时间过得很快,过得很充实,近来研究QT,首先嘛,肯定要学会安装了,这最基础的不会更不用说下面的啦.闲话少说,进正题,基本的安装步骤网上多的是,但参考一个大多数情况是 ...

  9. Qt环境搭建(Visual Studio)

    简述 经常有人问我编写Qt程序时使用什么IDE,其实这个真的很难回答(各有所长),只能说看个人爱好了,因为我两个都用,而且两个都很喜欢(比较多情吧O(∩_∩)O~)! 下面将进行Qt Creator与 ...

随机推荐

  1. 关于web标准的理解(转)

    从开始接触所谓web标准化,差不多也有两年多的时候了吧.从最初的疑惑和彷徨一直到现在,经历了每一个阶段.这段过程是痛苦的也是开心的,痛苦的是这个过程中没有人可以帮你答疑解惑,所有的问题都要你自己去解决 ...

  2. Hibernate注解学习1

    由于项目的原因目前需要一些简单注解,于是就做了个hibernate注解的小demo,来记录一下. 1.需要引入jar包ejb3-persistence.jarhibernate-annotations ...

  3. Android 控件属性

    TextView 文字属性//文字左右居中android:layout_centerHorizontal="true"//文字垂直居中android:layout_centerVe ...

  4. 在WPF中自定义你的绘制(四)

    原文:在WPF中自定义你的绘制(四)                                   在WPF中自定义你的绘制(四)                                 ...

  5. C语言的本质(19)——预处理之一:宏定义

    我们在写代码时已多次使用过以"#"号开头的预处理命令.如包含命令#include,宏定义命令#define等.在源程序中这些命令都放在函数之外,而且一般都放在源文件的前面,它们称为 ...

  6. axis2之webservice

    Axis2之webservice超详细教程 Axis2是一套崭新的WebService引擎,该版本是对Axis1.x重新设计的产物.Axis2不仅支持SOAP1.1和SOAP1.2,还集成了非常流行的 ...

  7. 关于清晰讲解linux正则表达式的博文分享

    http://www.cnblogs.com/chengmo/archive/2010/10/10/1847287.html  linux shell 正则表达式(BREs,EREs,PREs)差异比 ...

  8. linux监控脚本,脚本支持传参,整合C程序

    1,查看指定用户下的进程pid

  9. 【csdn】文章很好 - system函数遇到的问题

    system函数遇到的问题http://blog.csdn.net/yangzhenzhen/article/details/51505176

  10. 我使用过的Linux命令之file - 检测并显示文件类型

    摘自:http://codingstandards.iteye.com/blog/804463 我使用过的Linux命令之file - 检测并显示文件类型 用途说明 file命令是用来检测并显示文件类 ...