QT肝8天19--Windows程序部署

1、Qt 程序部署指南

静态链接部署

静态链接将Qt库和应用程序打包成一个可执行文件,适合简单分发。使用静态链接需确保Qt版本支持静态编译(开源版需自行编译静态库)。编译时在qmakeCMake中配置静态链接选项:

动态链接部署

动态链接需附带Qt的运行时库。通过windeployqt(Windows)、macdeployqt(macOS)或手动复制库文件(Linux)自动收集依赖项:

平台特定处理
  • Windows :需包含Qt5Core.dll等动态库及platforms/qwindows.dll插件。建议使用NSISInno Setup制作安装包。
  • macOS :通过macdeployqt生成.app bundle并处理框架依赖:
  • Linux :依赖系统库,可打包为AppImageSnap。使用ldd检查动态库:
处理插件和资源

确保程序能访问Qt插件目录(如imageformatssqldrivers)。可通过QCoreApplication::addLibraryPath()指定路径,或将插件放在可执行文件同级目录的plugins子文件夹中。

依赖检查工具
  • Dependency Walker(Windows):分析缺失的DLL。

2、一起行动,共创辉煌!

1、查看编译环境

2、查看输出目录

3、开始打包

Qt 程序打包方法

Windows 平台

使用 windeployqt 工具自动收集依赖项,该工具位于 Qt 安装目录的 bin 文件夹中。

运行命令:

cpp 复制代码
windeployqt --release --no-compiler-runtime --no-angle --no-opengl-sw your_app.exe

将动态链接库、插件和资源文件复制到同一目录,最后使用 NSIS 或 Inno Setup 创建安装包。

Linux 平台

使用 linuxdeployqt 工具打包,需先安装基础依赖:

找到QT安装目录下的编译命令所在位置 ,如图所示:

cmd命令进入到上面那个位置

开始执行打包命令

打包成功后的文件资源

这个目录就是项目打包后的程序包,可以将这个包发给对方,也可以利用专门工具制作成可执行的安装程序,如专门的打包工具InstallShield这类软件,这里为了简单,就不操作了。

4、运行测试

5、小结

Qt程序的打包方法因平台和目标需求不同而有所差异。

复制代码
原创不易,打字不易,截图不易,撸码不易,整理不易,走过路过,不要错过,欢迎点赞,收藏,转载,复制,抄袭,留言,灌水,请动动你的金手指,祝您早日实现财务自由。
相关推荐
灰子学技术9 小时前
go response.Body.close()导致连接异常处理
开发语言·后端·golang
二十雨辰9 小时前
[python]-AI大模型
开发语言·人工智能·python
Yvonne爱编码9 小时前
JAVA数据结构 DAY6-栈和队列
java·开发语言·数据结构·python
Re.不晚9 小时前
JAVA进阶之路——无奖问答挑战1
java·开发语言
你这个代码我看不懂9 小时前
@ConditionalOnProperty不直接使用松绑定规则
java·开发语言
pas1369 小时前
41-parse的实现原理&有限状态机
开发语言·前端·javascript
琹箐10 小时前
最大堆和最小堆 实现思路
java·开发语言·算法
Monly2110 小时前
Java:修改打包配置文件
java·开发语言
我命由我1234511 小时前
Android 广播 - 静态注册与动态注册对广播接收器实例创建的影响
android·java·开发语言·java-ee·android studio·android-studio·android runtime
island131411 小时前
CANN ops-nn 算子库深度解析:核心算子(如激活函数、归一化)的数值精度控制与内存高效实现
开发语言·人工智能·神经网络