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、生成效果

相关推荐
侃侃_天下2 天前
最终的信号类
开发语言·c++·算法
echoarts2 天前
Rayon Rust中的数据并行库入门教程
开发语言·其他·算法·rust
Aomnitrix2 天前
知识管理新范式——cpolar+Wiki.js打造企业级分布式知识库
开发语言·javascript·分布式
每天回答3个问题2 天前
UE5C++编译遇到MSB3073
开发语言·c++·ue5
伍哥的传说2 天前
Vite Plugin PWA – 零配置构建现代渐进式Web应用
开发语言·前端·javascript·web app·pwa·service worker·workbox
小莞尔2 天前
【51单片机】【protues仿真】 基于51单片机八路抢答器系统
c语言·开发语言·单片机·嵌入式硬件·51单片机
我是菜鸟0713号2 天前
Qt 中 OPC UA 通讯实战
开发语言·qt
JCBP_2 天前
QT(4)
开发语言·汇编·c++·qt·算法
Brookty2 天前
【JavaEE】线程安全-内存可见性、指令全排序
java·开发语言·后端·java-ee·线程安全·内存可见性·指令重排序
百锦再2 天前
[特殊字符] Python在CentOS系统执行深度指南
开发语言·python·plotly·django·centos·virtualenv·pygame