Qt中程序发布及常见问题

1、引言

当我们写好一个程序时通常需要发布给用户使用,那么在Qt中程序又是如何实现发布的呢,这里我就来浅谈一下qt中如何发布程序,以及发布程序时的常见问题。

2、发布过程

2.1、切换为release模式

当我们写qt程序时默认是debug模式,该模式下的程序带有大量的调试信息,而这些对于用户来说是多余的,因此,我们需要将项目切换为release模式,切换release模式只需要点击下方图片中带有debug字样的图标,就会弹出对应的选项,在选项中选择release即可。

2.2、生成链接库

项目中使用的库都是属于动态库,只有开发者计算机中才能链接到,用户的电脑中可能没有相应的库,也没法链接,为此,我们必须把项目中使用到的库一起放在项目中,这样用户下载后才有对应的环境,

要生成静态库,需要以管理员模式打开Qt自带的命令行窗口,使用cd命令切换到对应的release目录下,再这之前需要在release模式下运行一次程序才会生成相应的目录。切换到该目录后使用如下命令进行静态库的生成,其中uiactivity要换成你的exe文件的名字,一般这种情况下就能生成静态库了。

java 复制代码
windeployqt uiactivity.exe

2.3、生成静态库失败解决

如果上面的方法无法完成发布,那么你需要配置下面的这个exe程序的path变量,具体看你的安装版本和安装位置,配置好后再次执行以上命令,最后重新打开命令行窗口再执行。

java 复制代码
C:\Qt\Qt5.12.1\5.12.1\mingw73_64\bin\windeployqt.exe

以上方法依旧无法生成静态库,请使用全路径模式,这样就没问题了,命令如下所示:

java 复制代码
C:\Qt\Qt5.12.1\5.12.1\mingw73_64\bin\windeployqt.exe D:\data\qt\build-uiactivity-Desktop_Qt_5_12_1_MinGW_64_bit-Release\release\uiactivity.exe

3、生成效果

相关推荐
草莓熊Lotso1 小时前
【C++ 基于微服务的即时通讯系统】文件存储子服务实战:UUID生成、文件IO封装与全接口单元测试
开发语言·网络·数据库·c++·微服务·架构·单元测试
huaqianzkh2 小时前
WinForm C#:循环修改控件UI闪烁卡顿?SuspendLayout / ResumeLayout 与 BeginUpdate 优化
开发语言·ui·c#
沐晓时光12 小时前
C语言入门,内存函数知识讲解
c语言·开发语言
David猪大卫18 小时前
【C++修炼】map 和 set 的使用
c语言·开发语言·数据结构·c++·经验分享·笔记·学习
fengci.19 小时前
CTF2MISC中等部分
开发语言·前端·学习
xys_67821 小时前
JavaEE通关手册:初识Java
java·开发语言
慧都产品智能化1 天前
Qt 表格升级攻略:复用已有编辑器,减少重复开发
c++·qt·编辑器·qt6.3
ShineWinsu1 天前
对于Qt:QTableWidget常见属性以及QTableWidgetItem类的解析
开发语言·c++·qt·gui·客户端·表格·qtablewidget
ShineWinsu1 天前
对于Qt:QListWidget常见属性以及QListWidgetItem类的解析
开发语言·c++·qt·客户端·列表·qlistwidget·qlistwidgetitem
吴名氏.1 天前
Java转AI Agent教程(第十二周)检索与切分
java·开发语言·人工智能·ai·ai agent