Qt程序打包和发布

news2025/1/13 10:17:28

准备工具

1、Qt Creator,记录Qt Creator的安装路径

2、NSIS空白脚本程序和NSIS汉化脚本程

1 Windows下打包与发布

1.1 打包成zip发布

1、通过Qt Creator build应用程序,选择Relaease build的应用程序占用空间少(推荐),选择Debug build的应用程序占用空间大。

2、进入到build产物路径下,找到对应的exe程序(一版在建立项目的统计目录),....\QtPackTest\build-QtPackTest-Desktop_Qt_5_9_1_MSVC2013_64bit-Release\release

3、将对应的exe单独放置在自己创建的新目录下(..\QtPackTest\PackExe),方便后期将exe单独进行压缩

4、将Qt安装目录的bin的路径添加到环境变量(如果Qt有多个编译器,注意选择你对应Build 构建时的编译器)

  4.1、我的Qt-bin路径(D:\Install\Qt5.9.1\5.9.1\msvc2013_64\bin)

  4.2、添加变量:计算机-右键-属性-高级系统设置-环境变量-系统变量-path-编辑(记得变量之间用分号隔开)或者选择新建

5、点击开始-cmd-回车进入命令提示符,使用cd命令进入刚刚创建的PackExe文件夹

6、接着输入:windeployqt xx.exe (xx为exe文件名),会出现以下界面:

7、打包后新建文件夹目录,形成压缩包就可以发布

注意:1、配置后提示windeployqt不是内部命令,烦请重新启动设备

    2、打包后,如果运行提示少了什么库,可以已经提示自行补上

    3、如果是打包开源项目的exe,注意将初始产物下(....\release)的其他文件夹放到新建文夹中(PackExe)

1.2 打包成exe发布

1、先安装汉化版,确保有VNISEdit存在(杀毒软件可能导致VNISEDit编译环境无法创建,安装后直接退出,桌面无图1图标显示),才能参考说明生成相关脚本。安装NSIS官网版本,确保汉化版的脚本能正常生成(一定要先安装汉化版,在安装官网版)

2、双击VNISEdit编译环境,点击文件-》新建脚本:向导


3、应用程序信息,可以自行命名。设置要打包的应用程序的名称、版本号、出版人等,可以预留一个网站,在后面设置生成一个对应网址的“Internet 快捷方式”,我的修改如下图

 然后点击下一步。


3、安装程序选项,设置生成安装程序的图标、名字、语言(SimpChinese为中文)、用户图形界面的样式、压缩算法等。可选择默认,也可根据要求进行修改,下一步。
4、快闪屏幕和背景窗口,设置安装程序在安装时的一些样式,这里选择默认,下一步。
5、应用程序的目录与授权信息,设置安装程序进行安装时默认的安装路径,授权文件可以不选(如果选择一定要确保文件存在),下一步。
6、应用程序文件,设置我们需要打包的文件,例如exe、和dll所在目录(注意选择包含子目录),具体可参考下图。

 然后点击下一步。


7、应用程序图标,设置安装程序安装完成后开始菜单中应用程序文件夹名字以及文件夹中的内容,选择生成快捷方式的位置,下一步。
8、安装程序之后运行,设置安装程序安装完成后运行应用程序的路径,下一步。
9、解除安装程序,设置卸载程序的图标以及一些提示信息,下一步,完成。
注:这里有一些信息使用了变量来表示,因为脚本中可能多个地方使用该值,使用变量可以方便修改,统一管理。这些变量在下面的脚本中会设置相应的值。
10、完成向导,勾选”保存脚本“,以及”转换文件路径到相对路径“,完成
11、这时就可以看到通过向导生成的脚本,可以在这里继续修改脚本
修改完脚本以后,点击菜单”NSIS“-》"编译并运行",编译成功后,会生成一个exe文件,安装包制作完成,脚本运行结果

 12、和用Qt自带打包软件相比,可以只要释放Setup.exe成给客户安装,并且有卸载的程序

 安装后的产物

2 Linux下打包与发布

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/558012.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

使用 PAI-Blade 优化 Stable Diffusion 推理流程

背景 AIGC是人工智能计算领域里发展迅速的重要业务。Stable Diffusion 是其中最热门的开源模型,受到广泛关注。然而,随着应用场景不断扩大,Stable Diffusion所面临的推理时延和计算成本问题也越来越突出。 简介 PAI-Blade是 PAI 推出的通用…

可视化搭建 - 自动批处理与冻结

性能在可视化搭建也是极为重要的,如何尽可能减少业务感知,最大程度的提升性能是关键。 其实声明式一定程度上可以说是牺牲了性能换来了可维护性,所以在一个完全声明式的框架下做性能优化还是非常有挑战的。我们采取了两种策略来优化性能&…

我的创作纪念日,成为创作者的第256天!

机缘 一年前刚开始学习编程,在网上查找资料的过程中才了解到了CSDN开发者社区。在csdn认识了很多技术大牛,他们的文章记录了他们的学习路径,看到他们从小白一步一步成长为大牛,这激起了我创作的热情。刚开始写博客完全是日常学习…

广域通信网 - HDLC 高级数据链路控制协议

文章目录 1 概述2 HDLC2.1 帧类型2.2 帧结构 3 扩展3.1 网工软考真题 1 概述 #mermaid-svg-JEuFH1qP4tY5jI5p {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-JEuFH1qP4tY5jI5p .error-icon{fill:#552222;}#mermaid-…

快看!ChatGPT的4个不为人知却非常实用的小功能

文 / 高扬(微信公众号:量子论) 今天重点介绍四个ChatGPT很实用的小功能。 一、停止生成 如果在ChatGPT输出内容的过程中,我们发现结果不是自己想要的,可以直接点击“Stop generating”按钮,这样它就会立即停…

小鱼说|城市产业带与供应链系统的结合模式(2)

上一篇讲到城市产业带 的形成以及讲到 它与供应链的关系 那么我们继续把 这个话题深化一下 从原厂地到供应商 到供应链再到商城平台 城市产业带是供货的源地 经过最多二级的供应商上架 到供应链再经过最多二级的 经销商流入到各大商业平台 由于一个供应链可对接多个城市产业带 …

公网远程访问本地jupyter notebook服务 - 内网穿透

文章目录 前言视频教程1. Python环境安装2. Jupyter 安装3. 启动Jupyter Notebook4. 远程访问4.1 安装配置cpolar内网穿透4.2 创建隧道映射本地端口 5. 固定公网地址 转载自cpolar的文章:公网远程访问Jupyter Notebook【Cpolar内网穿透】 前言 Jupyter Notebook&am…

ChatGPT为一位英语女教师做了这件事

文 / 高扬(微信公众号:量子论) 今天有位网友加我微信,是某中学的英语老师,通过“量子论”公众号知晓了ChatGPT的一些有趣玩法,询问是否有办法帮她做个提示词,依据一个单词生成配套学习资料。 即…

代码实战深度理解RabbitMQ 5 种消息模型

5种消息模式 简单消息模式:1个生产者 1个队列 1个消费者;生产者只负责生产,消费者只负责消费,两者在同一个队列中操作工作队列消息模式:1个生产者 1个队列 多个消费者; 一条消息只能被消费一次订阅消息…

AI作曲都这么厉害了,AI生成音乐

人工智能(AI)正在越来越多地应用于音乐、电影和绘画等艺术领域。在之前海森大数据已经为大家介绍了AI生成绘画,今天带大家了解一下AI生成音乐。 在当下的应用中,AI音乐生成已经相对成熟,AI已经可以影响音乐制作过程的…

annoconda安装使用及镜像源的添加,提高软件下载速度

1 annoconda下载 文件地址列表,选择版本下载https://repo.anaconda.com/archive/ win10版本: Anaconda3-2023.03-1-Windows-x86_64 linux版本: Anaconda3-2023.03-1-Linux-x86_64 win10下执行exe按向导安装,linu…

人工智能和物联网:如何将传感器和设备数据与机器学习相结合

第一章:引言 人工智能(Artificial Intelligence, AI)和物联网(Internet of Things, IoT)是当今科技领域最引人注目的技术之一。随着传感器和设备的普及,我们能够收集到大量的实时数据。然而,这…

chatgpt赋能Python-python_head__

Python的head()方法 什么是head()方法? head()方法是Python编程语言中的一个函数,它用于获取一个序列的前几项。它的用法如下: head(n, iterable)其中,n表示需要返回的序列前n项,iterable表示需要获取前n项的序列对…

2023年海彼特全国幼儿篮球联赛·总决赛圆满落幕

5月21日,由北京海彼特教育科技院主办的“2023年海彼特全国幼儿篮球联赛总决赛”。在河北体育馆隆重举行,精彩的比赛效果使体育馆顿时成为幼儿篮球界最高端、大气的舞台。 本次盛会联合举办方有: 河北体育馆 亚洲少儿体育协会 北京海彼特文…

【Linux】signal 和 sigaction 两个信号捕捉函数

目录 signal 信号捕捉函数1、函数解析2、代码示例 sigaction 信号捕捉函数1、函数解析2、代码示例 内核实现信号捕捉的过程 sigaction的用法要复杂一些,但一般都是用sigaction,signal依据不同的标准可能有不同的用法变化,sigaction比较稳定&a…

易基因:全基因组DNA甲基化分析揭示DNMT1在斑马鱼模型听觉系统发育中的作用 | 胚胎发育

大家好,这里是专注表观组学十余年,领跑多组学科研服务的易基因。 听力障碍通常与内耳发育不全或损伤有关,是影响生活质量的严重健康问题。因此研究听觉器官发生过程中的关键基因对于探索听力损伤的潜在策略至关重要。斑马鱼模型在理解内耳发…

C++ Primer笔记——查找算法

目录 一.简单查找 ①find(first, last, val); ②find_if & find_if_not ③count & count_if ④all_of & any_of & none_of 二.重复值的查找 ①adjacent_find(first, end); ②search_n(first, end, count, val); 三.查找子序列 ①search(first1, end1,…

基于html+css的图展示86

准备项目 项目开发工具 Visual Studio Code 1.44.2 版本: 1.44.2 提交: ff915844119ce9485abfe8aa9076ec76b5300ddd 日期: 2020-04-16T16:36:23.138Z Electron: 7.1.11 Chrome: 78.0.3904.130 Node.js: 12.8.1 V8: 7.8.279.23-electron.0 OS: Windows_NT x64 10.0.19044 项目…

Redis事务和Redis管道

什么是Redis事务:Redis事务是指将多条命令加入到队列里面,一次批量执行多条命令,每一条命令会按顺序执行,在事务执行过程中不会受到客户端所传入的命令请求的影响 1)单独的隔离操作:Redis的事务仅仅保证事务 里面的操作会被连续独占的执行&am…

【Rust 日报】2023-05-21 Helix 23.05发布

Helix 23.05发布 Helix 是个文本编辑器: 新版本功能: 为 LSP 引用请求添加一个配置选项,用于排除声明(#6886)。根据文件扩展名和 shebang 启用语言注入(#3970)。通过最近…