QT如何打包生成独立可执行.exe文件

news2024/9/21 0:37:58

一、将QT程序使用Release编译

在这里插入图片描述

二、新建一个文件夹,将Release编译生成的exe文件复制到新建文件夹中

先找到Release编译生成的exe文件夹位置,与项目创建的文件夹有关:
在这里插入图片描述临时文件夹 --》 release --》 xx .exe文件
比如我的这个就是在D:\QtPro\build-Serial-Desktop_Qt_5_12_9_MinGW_64_bit-Release\release
把exe文件拷贝出来
在这里插入图片描述
随便在哪创建一个空的文件夹,然后将.exe文件拷贝进去
比如我在E盘新建了QTtest文件夹
在这里插入图片描述
三、使用命令终端添加程序所需的依赖库

在开始菜单中找到Qt命令终端(版本可能不一样打开对应版本就行),进入刚才新建的文件夹目录,使用 windeployqt 对生成的exe 文件进行打配置动态库文件:
在这里插入图片描述
一般来说,打开命令行终端后默认是在QT的安装路径下,这样需要先把路径切过去到exe文件的路径下再使用 windeployqt 命令 + .exe文件名操作

在这里插入图片描述

或者直接windeployqt + .exe文件绝对路径
在这里插入图片描述
这样就成功了,可以双击exe文件测试是否可以正常打开。
在这里插入图片描述
到这一步其实可以选择把整个文件夹打个压缩包,然后就可以发送到其他PC端使用了,只需解压缩即可。
如果还觉得麻烦,想只用一个exe文件就能独立工作,那就接着往下操作。

四、打包程序(下面的步骤只适用于Windows系统下)

(1) 安装Enigma virtual box工具

Enigma Virtual Box是软件虚拟化工具,它可以将多个文件封装到应用程序主文件,从而制作成为单执行文件的绿色软件。它支持所有类型的文件格式,虚拟化后的软件不释放任何临时文件到您的硬盘,文件模拟过程仅在内存运行。

Enigma virtual box官方链接:https://enigmaprotector.com/cn/downloads.html
进入官网后找到红框部分点击下载即可,不需要注册账号:
在这里插入图片描述

下载后点击安装,安装过程一直next就行,注意勾选创建桌面快捷方式,默认是不创建的。
在这里插入图片描述
安装好后:
在这里插入图片描述
打开还可以设置中文语言:
在这里插入图片描述

(2) 打开安装好的Enigma Virtual Box,点击浏览,找到第三步的目录下的exe文件:

在这里插入图片描述

(3) 点击增加,选择递归添加文件,选中demo文件夹点击确定

在这里插入图片描述

(4) 选择目标文件夹后点击确定

在这里插入图片描述

(5) 点击文件选项,选中压缩文件,点击确定

在这里插入图片描述

(6) 最后点击执行封包,等待结束即可。

在这里插入图片描述

(7) 最终生成的文件名和路径,找到该文件双击打开测试是否正常

在这里插入图片描述

至此整个打包过程结束

推荐好文:
https://blog.csdn.net/childbor/article/details/125283893

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

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

相关文章

vulnhub-RAVEN:2(MYSQL-UDF提权,手工提权/工具自动提权)

镜像下载:Raven: 2 ~ VulnHub 实验环境:kali:192.168.78.128 vulnhub镜像:192.168.78.133 1、kali查看本地ip地址,以便使用nmap扫描ip段存活主机 2、nmap扫描IP段,发现靶机的IP地址为192.168.78.133 4、访问…

十款常用的Jupyter Notebook Extensions插件

Table of Contents:一款可以在笔记本左侧生成目录树的插件。它可以让你快速导航到不同的章节,也可以折叠和展开各级标题。Codefolding:一款可以折叠代码块的插件。它可以让你隐藏不需要查看的代码,只显示关键的部分,提…

【Linux】Linux的文件操作

文件操作对于不少编程初学者来说都是一件头疼的事情,不管你学习的是什么编程语言,C/C/Java/Go/Python ,因为我们学习到的文件相关的操作对你来说都是一个黑盒,我们只是知道我们应该怎么使用相应的文件函数进行操作,而对于内部的实…

Linux线程同步(2)——初识互斥锁

互斥锁(mutex)又叫互斥量,从本质上说是一把锁,在访问共享资源之前对互斥锁进行上锁,在访问完成后释放互斥锁(解锁);对互斥锁进行上锁之后,任何其它试图再次对互斥锁进行加…

C语言:青蛙跳台与汉诺塔问题

青蛙跳台 原理:一只青蛙跳n个台阶,青蛙可以一次性跳1个台阶,也可以跳2个台阶,问,有多少种跳法,可以跳过n个台阶。 分析:青蛙跳台本质上是递归问题,那它为什么是递归问题呢&#xff…

cleanmymac在哪下载?中文官网安装教程

CleanMyMac是一个系统清理工具,删除系统缓存文件 , 多余的应用程序语言包 , PowerPc软件运行库等。 是个给你的硬盘瘦身的好工具。 系统:macOS 10.14(在10.15以及Big Sur中的安装激活教程相同)登录CleanMyMac X下载页面&#xff0…

第十四章_缓存双写一致性之更新策略探讨

缓存双写一致性的理解 如果redis中有数据 需要和数据库中的值相同 如果redis中无数据 数据库中的值要是最新值,且准备回写redis 缓存按照操作来分,细分2种 只读缓存 读写缓存 同步直写策略 写数据库后也同步写redis缓存,缓存和数据库…

01:mysql基本操作---DDL

目录 前言: 1:SQL分类 2:类型 3:sql表的创建----简单版本 前言: 1:SQL语句可以单行或多行书写,以分号结尾。 2:SQL语句可以使用空格/缩进来增强语句的可读性。 3:MySQL数据库的SQL语句不区分大小写,关键字建议使用大写 4:注释: 单行注释:-- 注释…

RabbitMQ详解(三):消息模式(fanout、direct、topic、work)

消费模式 参考官网:https://www.rabbitmq.com/getstarted.html 简单模式 Simple, 参考RabbitMQ详解(二):消息模式 Simple(简单)模式 简单模式是最简单的消息模式,它包含一个生产者、一个消费者和一个队列。生产者向队…

量化散户交易数据:追涨爆亏99%,杀跌少赚28倍?| 追涨杀跌一时爽,散户钱包火葬场?【邢不行】

你第一次炒股的经历是不是这样的: 你有一个朋友,他说在XX股票上大赚了一笔,你听后是既羡慕又不服。 于是你下载了炒股软件,看了眼这只股票,有点心动。但由于没有交易经验,股价又确实涨了不少,…

Python基础入门编程代码练习(四)

一、遍历列表 通过 input输入3个人信息,每个人有姓名和年龄,将信息存入字典中,并将将字典存入列表。 遍历列表,打印每个人的信息,打印格式如下: 张三 20李四 22王五 23 1. 输入三个人的信息 (输入 inpu…

qiankun 微前端 demo(Vue2)

前言 这是我最近刚开始学微前端(qiankun框架)做的一个小demo,做的时候还是遇到很多问题的,在网上也是看了很多别人的Blog,最后也是磨出来了😂😂😂;这篇文章总统分为分为…

国产麒麟操作系统 myCat1.6读写分离

我的环境是麒麟操作系统,我只配置读写分离 一、使用说明,java环境,解压就能用 下载地址https://raw.githubusercontent.com/MyCATApache/Mycat-download/master/1.6-RELEASE/Mycat-server-1.6-RELEASE-20161028204710-linux.tar.gz mycat 是j…

OJ刷题之旅

题目 现在给你两种颜色的箩筐,需要的时候,就把一个个大小差一圈的筐叠上去,使得从上往下看时,边筐花色交错。这个工作现在要让计算机来完成,得看你的了。 输入 输入是一个个的三元组,分别是,外…

SpringCloud使用SkyWalking实现分布式链路追踪1

文章目录 一、MicrometerTracingBrave(Sleuth)链路追踪1、MicrometerTracingBrave和Zipkin的概论2、Docker搭建Zipkin服务3、MicrometerTracingBrave和Zipkin实现链路追踪 二、SkyWaking服务的安装与使用1、SkyWalking的概论2、Java探针的环境搭建3、Java探针实现日志监控4、Sk…

Netty——介绍和maxContentLength配置

官网 介绍 Netty框架的设计思路是基于NIO的事件驱动编程模型,核心组件包括: Channel:通道,负责网络数据的读写操作; EventLoop:事件循环,处理I/O事件和用户自定义事件; ChannelFut…

【子集树】输出一个序列的子序列

【子集树】输出一个序列的子序列 给一个序列 1 2 3 输出序列的子集 1 2 3 12 13 23 123 如何实现&#xff1f; 由上可以看出 类似于全排列 如何用全排列 实现子集输出&#xff1f; 也就是子集树&#xff1f; #include<iostream>using namespace std;const int N 1e5…

【C++技能树】令常规运算符用在类上 --类的六个成员函数II

Halo&#xff0c;这里是Ppeua。平时主要更新C语言&#xff0c;C&#xff0c;数据结构算法…感兴趣就关注我吧&#xff01;你定不会失望。 本篇导航 0.运算符重载1.赋值运算符 重载2.比较运算符 重载3.比较运算符 ! 重载4.比较运算符 < 重载5.比较运算符 < 重载6. 比较…

图片处理软件:分享6款非常实用的图片处理工具

目录 一、移动端 1、snapseed 2、一键抠图 3、pixlr 二、电脑端 1、图片编辑助手 2.GIMP 3、photopea 今天给大家分享6款非常实用的图片处理工具&#xff0c;其中包含移动端和电脑端&#xff0c;每一款都非常实用&#xff0c;希望对大家能有所帮助&#xff01; 一、移…

《编程思维与实践》1059.计算a的n次方的大整数

《编程思维与实践》1059.计算a的n次方的大整数 题目 思路 高精度的问题统一的解决思路是用一个数组去存大整数的每一位数,运算转化为对数组的操作. 可以从个位开始存(逆序),也可以从最高位开始存(顺序),以处理方便为主要考虑因素. 同时可以将大整数定义为一个结构体,包含位数,…