Qt5.9源码静态编译教程:VS2017与MinGW详解
需积分: 9 105 浏览量
更新于2024-08-31
收藏 204KB DOCX 举报
本文档详细介绍了在Windows 10环境下使用MinGW和Visual Studio 2017两个编译器对Qt5.9.0源码进行静态编译的过程。首先,确保环境中已安装了Qt 5.9.0(附带MinGW 5.3.0 32位版本)和VS2017社区版。Qt的默认编译方式是动态链接,生成的可执行文件(exe)不能独立运行,需借助windeployqtxx.exe工具来找到并部署依赖的dll。
静态编译Qt源码的步骤分为四部分:
1. **环境准备**:
- 下载Qt 5.9.0源码,并确保Python已安装,使用源码目录为qt-everywhere-opensource-src-5.9.0。
2. **修改编译参数**:
- 对于VS2017:
- 修改qtbase/mkspecs/win32-msvc/qmake.conf,参照其中的路径,进一步修改qtbase/mkspecs/common/msvc-desktop.conf,以支持静态编译。
- 对于MinGW:
- 打开qtbase/mkspecs/win32-g++/qmake.conf,同样进行相应的静态编译配置。
3. **修复源码bug**:
- 如果使用VS2017编译,需要处理特定bug。在qtbase/src/corelib/tools/qalgorithms.h文件中,替换有问题的代码。此步骤可能在其他版本的Qt中有所不同。
4. **编译过程**:
- VS2017:
- 在VS2017开发者命令提示符中操作,执行configure命令,选择平台(win32-msvc)、编译类型(debug或release)以及输出路径(如E:\Qt-lib\5.9.0-static-vs2017),然后执行make命令完成编译。
- MinGW:
- 在名为"QT5.9forDesktop (MinGW)"的应用中,进入Qt源码根目录,同样执行configure(选择platform win32-g++),然后根据指引编译。
静态编译完成后,VS2017生成的exe文件会显著减小,因为不再包含庞大的dll依赖。然而,由于静态编译涉及的复杂性,需要注意可能存在的编译问题和性能影响。此外,文档还提到了动态编译与静态编译在大小和独立性上的对比,前者虽然exe较小,但需要额外的dll文件,而后者虽然exe较大,但无需外部依赖,适合对资源有限或者追求更稳定性的场景。
点击了解资源详情
点击了解资源详情
点击了解资源详情
2022-11-25 上传
2022-01-17 上传
2022-11-29 上传
2021-08-09 上传
2022-11-25 上传
2020-08-17 上传
yetuanchun
- 粉丝: 0
- 资源: 1
最新资源
- MATLAB新功能:Multi-frame ViewRGB制作彩色图阴影
- XKCD Substitutions 3-crx插件:创新的网页文字替换工具
- Python实现8位等离子效果开源项目plasma.py解读
- 维护商店移动应用:基于PhoneGap的移动API应用
- Laravel-Admin的Redis Manager扩展使用教程
- Jekyll代理主题使用指南及文件结构解析
- cPanel中PHP多版本插件的安装与配置指南
- 深入探讨React和Typescript在Alias kopio游戏中的应用
- node.js OSC服务器实现:Gibber消息转换技术解析
- 体验最新升级版的mdbootstrap pro 6.1.0组件库
- 超市盘点过机系统实现与delphi应用
- Boogle: 探索 Python 编程的 Boggle 仿制品
- C++实现的Physics2D简易2D物理模拟
- 傅里叶级数在分数阶微分积分计算中的应用与实现
- Windows Phone与PhoneGap应用隔离存储文件访问方法
- iso8601-interval-recurrence:掌握ISO8601日期范围与重复间隔检查