Windows平台 Qt 5.9 VS2017 静态编译 包括OpenSSL、ICU

Windows平台 Qt 5.9 VS2017 静态编译

总览

这篇文章会简单介绍一下Qt 5.9使用VS2017静态编译的过程以及可能遇到的问题的解决方法。首先是依赖,与运行不同,Qt在编译的时候会有一些其它依赖。请安装好它们并且添加至环境变量

  • Perl version 5.12 or later,下载
  • Python version 2.7 or later,下载
  • Ruby version 1.9.3 or later,下载

除了上述依赖之外,Qt还有一些可选的外部库依赖,一些库在Qt源码中已经提供,我们只需要在配置的时候指定一下就好,一些并没有提供,需要自己下载别人编译好的或者需要自己编译。目前有两项,分别是ICUOpenSSL。我会在下面简单介绍他们的作用和编译方法。不过可惜的是虽然我编译成功了ICU,但是在配置Qt的时候一直过不了ICU的检查。后来我换成别人已经编译好的,依然过不了检查,所以ICU的编译过程应该没有问题,问题出在了Qt的配置上面,暂时还没有找到解决办法。辛辛苦苦写好的ICU编译教程又不舍得删,所以留在了下面 ICU的问题已经用一个不太漂亮的办法解决了,大家可以放心看了……

ICU

关于ICU在Qt中的作用,官方是这样介绍的:

ICU: Qt 5 can make use of the ICU library for enhanced UNICODE and Globalization support (see QTextCodec, QCollator::setNumericMode()).

让Qt使用ICU库的话会有下面的好处:

如果上面几项中没有你感兴趣的内容的话,就可以跳过这一节。

下面开始介绍ICU的编译,在ICU官网中,会提供用VS2015编译好的版本,不过因为我们使用VS2017,而且要静态编译,所以还是手动来一次。下载最新的ICU4C源代码。源代码下载

首先介绍依赖,ICU在配置编译选项时需要使用MSYS,原版的MSYS安装很麻烦,这里推荐另一个基于MSYS的东西,git-bash,一般安装了git的话都会有这个工具(下载地址)。在git的安装目录下就可以看到。另外,虽然是用VS编译,但是中间会用到MinGw的构建工具make(并不会用到gcc或者g++),所以还是会依赖MinGw,所以请确保MinGw已经被添加进环境变量。

准备好这些之后就可以开始编译了,在这里我们以32位为例。开始 -> Visual Studio 2017 -> x86 Nati

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 7
    评论
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值