编译QT 5.9.7 msvcr2013 x86 32位版本

本文介绍如何使用VS2013自行编译QT 5.9.7的x86版本,包括所需工具、步骤及解决编译过程中遇到的字符集问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

因为项目需要,用到了qt msvcr2013 x86 版本 ,但是官方下载的qt安装包里面只有x64的,因此决定自己编译x86的版本。

编译所需要的工具:

qt源码包 ,python ,vs2013

qt源码包下载

在安装qt opensource安装包的时候,如果勾选了src,就可以直接去qt安装目录下进行下一步,如果没有,可以单独下载

https://mirrors.tuna.tsinghua.edu.cn/qt/archive/qt/5.9/5.9.7/single/qt-everywhere-opensource-src-5.9.7.tar.xz

通过清华大学的镜像下载源码。

python

python安装这里就略去,记得不管是通过什么方式安装的,最后将python.exe所在目录加到环境变量中。

编译

通过cmd命令,cd到之前下载好的源码目录下:

如果是通过exe安装qt时候勾选了src的,大致是如下目录:

C:\Qt\Qt5.9.7\5.9.7\Src

如果是下载源码包的,应该是 xxxx\qt-everywhere-opensource-src-5.9.7

cmd下输入

configure -developer-build -opensource -confirm-license -mp -nomake examples -nomake tests -debug-and-release  -no-warnings-are-errors -platform win32-msvc2013

即可,如果不想要编译某个模块,-nomake,也可以-skip

比如加入 -skip qtwebengine

接着就是等待了,如果最好没有提示错误,

cmd下输入  nmake,回车,这个需要很长时间。

我在编译的过程中出现错误,报错:

wnnEngine\romkanfullkatakana.cpp(59) : error C2146: syntax error : missing '}' before identifier '銆'

等等,这个一般就是源码编码字符集和执行编码字符集差异。

qt的cpp一般是无bom的utf8编码,但是msvcr,

有BOM则按BOM解释,无则使用本地Locale字符集(随系统设置而变)

中文系统一般多是gb2312,

所以最后我去把这个目录下报错的几个cpp,用notepad++全部改成了utf8-bom编码

再nmake就成功了

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值