Windows环境Qt程序打包发布

windows使用QTCreator开发的QT程序移植到Ubuntu18,以及打包发布 一:windows使用QTCreator开发的QT程序移植到Ubuntu18 二:Ubuntu18 Qt程序打包发布 三:windows使用QTCreator开发的QT程序发布到windows下 阅读详情

Windows环境Qt程序打包发布

发布方式

Qt发布的时候,通常使用两种方式:

1、静态编译

把相关联的库一并引入可执行程序,虽然发布简单,但可执行程序较大。

2、动态编译

相关联的库,以dll的形式引用,不被包含进可执行程序,发布不方便,但可执行程序较小。静态发布虽然不需要较多的dll,发布简单、方便,但是往往会牵扯到授权问题(详情请查看Qt LGPL授权),动态发布则可以避免。。。如果附带了Qt的dll,就相当于发布了Qt的dll,而这些库是属于Qt的,这足以保证使用者知道程序使用了LGPL版本的Qt(这部分还有待探讨)。

 

查找依赖项

1、检测可执行程序依赖模块

程序运行所依赖的*.dll.包括Qt库目录下的platforms文件夹(eg: C:\Qt\Qt5.2.1\5.2.1\mingw48_32\plugins\platforms,少不得,少了就放肆说你缺这少那,又不直说是要这个platforms)

2、常用依赖库

(1)Qt模块库

    Qt5Cored.dll

    Qt5Guid.dll

    Qt5Widgetsd.dll

(2)ICU依赖库

    icudt51.dll

    icuin51.dll

    icuuc51.dll

(3)EGL依赖库

    libEGLd.dll

    libGLESv2d.dll

(4)插件库(Qt安装目录下即可找到D:\Software\Qt\Qt5.1.0\5.1.0\msvc2010\plugins\platforms)

    图片支持库:imageformats

    音频、视频支持库:mediaservice

    平台支持库:platforms

    等等。。。

    注意:查找对应的插件文件夹,粘贴到安装目录(一定要保持目录结构,例如“platforms/***.dll”),详细结构见打包发布准备的文件组织结构。    

(5)VS运行时库(在VS安装目录下即可找到D:\Software\Microsoft VisualStudio\VC\redist)

    msvcp100d.dll

    msvcr100d.dll

 

    注意:发布程序的时候注意版本(Debug/Release)

    如果是Debug版本的则是.前面带d的(Qt5Cored.dll、Qt5Guid.dll、Qt5Widgetsd.dll)

    如果是Release版本的则是.前面不带d的(Qt5Core.dll、Qt5Gui.dll、Qt5Widgets.dll)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

NSIS打包发布Qt程序

1、NSIS简介

(1)NSIS是什么?

    一款免费的Win32安装、卸载系统!

(2)NSIS有什么特点?

    脚本简洁高效、系统开销小,进行安装、卸载、设置、解压文件也不在话下,几乎可以做所有的事情。

 

2、工具

    NSIS Edit + NSIS

工具上传目录:https://202.197.67.33/svn/分享与成长/17 SWRelease/2 开发工具

3、发布流程

    脚本向导 + 修改代码(高级了) = 个性化安装包

 

准备文件

    以下是我即将打包的所有文件,安装包目录结构(包括:可执行程序、插件库、运行时库、授权文件、卸载程序图标等等!)如下图所示:

1、利用向导制作安装包

 

2、填写应用程序基本信息

 

 

3、指定安装程序所用选项

    注意:这里选择语言为SimpChinese。(不装nsis_2.46.1414981289.exe是没语言让你选的。)

 

4、设置应用程序安装目录与授权文件

   授权文件就是一个txt文件,不能为空,否则NIS编译不过,导致发布不成功。

 

 

5、指定应用程序文件

界面刚出来里面有默认的两个文件,要删除掉,然后添加需要发布的文件。

 

6、指定创建应用程序图标

 

 

7、选择安装程序完成后运行的动作

 

 

8、指定接触安装程序属性

 

 

9、进行脚本编译、保存

 

 

10、等待编译完成,即可运行打包后的安装包

 

    大功告成之后,即可进行安装!

 

应用程序可执行文件图标

1、问题描述

直接编译的QT程序,没有漂亮的外观,如下图。如何给程序添加一个漂亮的图标呢?

2、程序添加图标步骤

1下载图标素材,以png格式素材为例说明。

图标素材(logo.png)

2将图标素材转换为ico格式。

3利用记事本新建一个名为logo.rc的文件,logo.ico为转换后的图标名称,内容如下:

IDI_ICON1 ICON DISCARDABLE "logo.ico"

4在工程文件夹中新建一个images目录,将logo.ico、logo.rc放入文件夹中。

5打开QT工程,将logo.ico、logo.rc(images文件夹下面)添加进工程。

6在工程文件(*.pro)中加入一行:

RC_FILE=images/logo.rc

7重新组建工程,这时QT程序就有了一个漂亮的外观了,程序快捷方式效果如下图所示:

程序图标效果

Window平台Qt软件打包发布方法 Qt开发生成的工程,通过动态编译之后生成对应的可执行文件,如果直接执行该可执行文件则会报错: 原因是:Qt动态编译生成的可执行文件依赖非常多的dll文件,并且这些dll文件可能分布在不同文件目录,且这些目录大概率是没有添加在window系统的环境变量。 如果我们需要将该执行文件部署到纯洁的操作系统环境(环境中并无Qt开发环境),那么这些动态库更无从找到。此时,我们需要将可执行文件以及依赖的dll文件一同打包发布。在window平台,Qt软件的打包发布使用windeployqt工具进行。 具体的打 阅读详情

相关推荐

QT应用程序打包流程:Inno Setup实战指南

在当今的软件开发领域中,跨平台应用程序的需求日益增长,而QT和Inno Setup正是满足这一需求的关键工具。QT是一个用于开发具有图形用户界面应用程序的跨平台应用程序框架,它支持多种操作系统,包括Windows、Linux和macOS。而Inno Setup则是一个免费的安装制作工具,它能够创建Windows平台上的安装程序。本章节我们将介绍QT和Inno Setup的基础知识,为读者揭开其强大功能的神秘面纱。

weixin_42510243的博客 1061

Qt项目运行失败: no Qt platform plugin cloud be initialized

Qt项目运行失败

weixin_47462584的博客 7114

Gamit 数据处理,相关的文件配置

一、处理前准备 1、在主文件夹内新建test项目文件,项目内新建brdc、igs和rinex三个文件夹,分别存放广播星历,精密星历几观测值文件,所用的命令分别为sh_get_nav、sh_get_orbits和sh_get_rinex (若文件为.Z,用gunzip命令解压,若仍为d,用命令sh_crx2rnx -f 命令解压为o文件) 2、进入test项目文件夹,链接tables,运行 sh_setup -yr 2015 -apr itrf08_com.apr 3、生成station.info文件。 将t

CodeDoraemon的博客 3375

Ubuntu移植QT程序,出现could not find the QT platform plugin “xcb“ in “ 时的一种解决方案

将QT 中的 platforms 文件夹 整个都放置到和 执行文件同一级的地方 如你的 QT 程序为 test ,放置在 ~/ 文件夹下,那就将整个platforms文件都放置到./ 文件夹下 事实上,就ubuntu移植,只需要libqxcb.so 动态库即可,你可以把platforms文件夹删的只剩一个libqxcb.so,但必须保留整个文件夹。 platforms文件夹再QT5.13.1/5.13.1/gcc_64/plugins文件夹下,该路径在新机子上默认为“”,给我一个感觉是空的环境变量,暂时

baidu_37902210的博客 3015

Flowable前端可视化配置动态审批人:告别硬编码,实现部门领导、项目经理自动分配

本文详细介绍了Flowable前端可视化配置动态审批人的全栈解决方案,通过表达式分配、监听器分配等动态审批人机制,实现从硬编码到智能分配的转变。文章提供了前端扩展bpmn-js设计器、后端动态解析实现方案及性能优化建议,帮助企业应对组织架构变动,提升审批流程的灵活性和效率。

weixin_30352645的博客 471

CentOS7无网环境实战:MySQL8.0完整离线安装与避坑指南(附依赖包下载)

本文详细介绍了在CentOS7无网环境下MySQL8.0的完整离线安装流程,包括依赖包获取、系统预处理、MySQL二进制安装、服务配置与优化等关键步骤。特别针对离线安装的特殊需求,提供了从依赖包下载到服务调优的全链路解决方案,帮助用户在企业内网或隔离环境中高效部署MySQL数据库。

bush的博客 172

Qt——Windows端打包发布(及报错because not Qt platform plugin could be initialized)【全面】

目录打包发布声明手误,用CMD进行windeployqt处理解决问题 或 打包步骤,用Qt for Desktop窗口进行windeployqt处理打包后,再简化打包 打包发布 参考: QT的程序打包发布(将QT5的工程项目打包成一个可直接运行的exe程序)【讲解:Qt Widgets Application(正常qt/c++项目)与Qt Quick Application(qml项目)两种打包方式】 QT windows 下生成可执行程序【用打包工具 Engima Virtual Box将windepl

風的博客 3942

特征提取神操作,登上Nature!计算速度狂提300%!

登上Nature!作者提出CVOCA,一种能同时处理数据的幅度和相位信息的卷积模型,在性能远超SOTA的同时,计算速度更是狂飙300%!实际上,作为机器学习和深度学习的核心技术,特征提取一直都是研究的热门!它直接影响着模型的准确性、计算效率、可解释性……同时,它也是我们改模型涨点,最好操作的部分!因为可切入点的真的非常之丰富,不管是轻量化、多尺度、时域与频域结合等,都能使模型性能得到提升!

2401_82426425的博客 4036

QT:可执行文件打包

本文详细讲解了,如何将QT的可执行文件进行打包的过程。

xikangsoon的博客 2864

看不懂分子动力学模拟的结果?一文读懂RMSD曲线

随后,将每一帧结构与初始模板进行叠合,计算对应原子的平均偏移量,即RMSD。总之,掌握 RMSD 的解读方法,就等于抓住了评估分子动力学模拟成败与质量的“总开关”。①在模拟初始阶段,RMSD会从0迅速上升,这是蛋白质从静态晶体或模型结构释放到溶液环境中并逐渐适应的正常过程。②经过一段时间后,曲线不再系统性上升或下降,而是围绕一个平均值,小幅度地上下波动,形成一个稳定的“平台”。这种情况下,RMSD 在初始快速上升后,并未进入平台,而是持续甚至加速上升,始终未见收敛。🔍 如何解读不同趋势的RMSD曲线。

weixin_46587777的博客 4884

开源AI数字人DUIX:从零构建你的智能交互助手

本文详细介绍了如何利用开源AI数字人DUIX从零构建智能交互助手。文章阐述了DUIX作为开源项目的核心优势,包括低成本启动、低网络依赖和高度可定制性,并提供了从开发环境搭建、核心模块(AI模型、语音、形象)配置到个性化业务逻辑开发与最终部署的完整实践指南,帮助开发者快速掌握构建专属AI数字人的全流程。

weixin_29051811的博客 502

Linux下Qt程序移置到新的电脑上遇到的问题

我拷贝了ldd查找到的可执行文件的关联库文件,然后建好目录运行,出现如下错误:This application failed to start because it could not find or load the Qt platform plugin "xcb" in "".Availabel platform plugins are: eglfs,linuxdb,minimal,minim...

weixin_39571864的博客 2004

RK3568笔记五十四:SORT实时目标追踪

YOLOv5具备目标检测的功能,把视频分解成多幅图像并逐帧执行时,如果视频帧中有多个目标,如何知道一帧中的目标和上一帧是同一个对象就是目标跟踪的工作。DeepSort是实现目标跟踪的算法,从sort(simple online and realtime tracking)演变而来,使用卡尔曼滤波器预测所检测对象的运动轨迹,匈牙利算法将它们与新的检测目标相匹配。结合YOLOv5和DeepSORT可以在实时场景中实现高效的目标检测和跟踪。

788

QT5的程序打包发布(将QT5的工程项目打包成一个exe程序)--- windows环境

转载:https://blog.youkuaiyun.com/windsnow1/article/details/78004265 最近,在学习QT5的过程中,想尝试着把自己写的工程程序给打包发布出来,在任何一台windows系统都能运行,这样就不会限于电脑需不需要安装QT安装包了。 首先,先介绍自己使用的环境。我使用的QT版本是 。我的电脑windows系统是win10专业版的。下面的打包教程...

zhenguo26的博客 601

WordPress MasterStudy LMS插件 SQL注入漏洞复现(CVE-2024-1512)

WordPress Plugin MasterStudy LMS 3.2.5 版本及之前版本存在安全漏洞,该漏洞源于对用户提供的参数转义不足,导致可以通过 /lms/stm-lms/order/items REST 路由的 user 参数进行基于联合的 SQL 注入。

0xSec 1437

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

Windows10 下Qt程序打包发布 (与配置环境变量)

当初对程序还很懵懂的时候(现在蒙圈),就很想知道程序是怎么被打包发布的。虽然现在还不会制作安装包,但是在Qt官方提供的工具下,可以制作Windows下Qt的“绿色免安装版”了。 程序运行平台: Windows10 Qt: Based on Qt 5.5.1 (MSVC 2013, 32 bit) Qt Creator 3.5.1 (opensource) 制作流程: ...

Pou光明的博客 1539

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

Qt5项目打包_qt webpack

QT开发的程序发布的时候经常采用两种方式:1 静态编译,可生成单一的可执行文件。2. 动态编译,需同时附上需要的dll文件。这里采取动态编译,然后第三方软件将其“组合”为单一文件的办法。软件环境:win10软件 名:Qt5.9.1MinGW版本,可以到这里下载。

2401_87555420的博客 890

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

qt 将exe嵌入又还原_Windows10下Qt程序打包发布 (与配置环境变量)

当初对程序还很懵懂的时候(现在蒙圈),就很想知道程序是怎么被打包发布的。虽然现在还不会制作安装包,但是在Qt官方提供的工具下,可以制作Windows下Qt的“绿色免安装版”了。程序运行平台: Windows10 Qt: Based on Qt 5.5.1 (MSVC 2013, 32 bit) Qt Creator 3.5.1 (opensource)制作流程:一个控制台程序,每隔2秒打印一条消...

weixin_39988476的博客 270

QT 应用程序部署

最近在发布Qt应用时遇到了一些困难,Windows还好,在Linux上面发布遇到了不少的麻烦(实际Linux应该简单才对),经过在网络搜索发现帖子不少,但都比较片面,现把Qt应用程序在Linux&Windows打包部署总结如下。

oracleworm的博客 1265

发布qml程序

1命令: windeployqt xxx.exe -qmldir C:\Qt\Qt5.9.6\5.9.6\mingw53_32\qml (如果是msvc换成msvc路径) 2说明: “C:\Qt\Qt5.9.6\5.9.6\mingw53_32\qml”为Qt实际安装目录下的qml文件夹路径。 ...

qq_36184671的博客 720

第十五课、Windows 下打包发布 Qt 应用程序

文章详细讲解了 Windows 下打包发布 Qt 应用程序的三种方法,即 windeploy、逐个拷贝依赖库、静态发布,并对比各打包发布方法的优缺点

Mr-Gui的博客 2545

QT5的程序打包发布(将QT5的工程项目打包成一个exe程序)

转自:https://blog.youkuaiyun.com/windsnow1/article/details/78004265 ...

二颖的博客 208

Qt系列——Win10下安装Qt6简单测试以及项目的打包发布

Win10下安装Qt6简单测试以及项目的打包发布

曾经也曾立志 1万+

QT5开发的程序打包发布

QT5开发的程序打包发布

呓语煮酒的博客 2196

Windows下基于Qt开发的应用程序的打包发布

在基于Qt开发完应用程序后,对应用程序进行打包发布可以让其在没有Qt开发环境的目标机器上运行。

m0_48370552的博客 1477

Qt程序打包和发布

准备工具 1、Qt Creator,记录Qt Creator的安装路径 2、NSIS空白脚本程序和NSIS汉化脚本程 1 Windows下打包与发布 1.1 打包成zip发布 1、通过Qt Creator build应用程序,选择Relaease build的应用程序占用空间少(推荐),选择Debug build的应用程序占用空间大。 2、进入到build产物路径下,找到对应的exe程序(一版在...

天码丶行满 1374
上一篇: Qt 环境下使用Gsl( GNU Scientific Library)库
下一篇: 去掉Qwt画布左下角缺口
QQ_278397935
博客等级 码龄18年 120粉丝 32原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值