华开发
原创
关注
2点赞·1821人阅读
Qt程序编写完成后,我们应该怎么给其他人安装呢?其实我们只需要知道Qt程序所依赖的动态库就可以直接拷贝将exe和动态库拷贝到其他人电脑上直接运行(也就是传说中的绿色免安装版)。Qt所依赖的动态库我们通过部署来获取。Qt程序部署有两种方式,一种通过QtCreator获取,另外一种是在cmd窗口使用windeployqt命令获取。
1QtCreator部署exe程序
我们首先新建一个Test工程(如果对如何创建工程不清楚可参考Qt第一个例程)。
首先我们先不部署看一下生成目录中包含哪些文件。
在该文件夹中实际上只有Textexe有用,其他都为中间文件可以删除。
接下来我们看如何使用QtCreator部署程序。新建完成后构建->部署项目”Test”按钮是不可用状态,需要我们先设置一下部署流程。
点击左侧项目按钮,主窗口切换到构建界面。再次点击左侧Run按钮,主窗口就切换到运行设置界面。在此界面,点击添加部署步骤,选择自定义处理步骤。
在命令编辑框可以输入windeployqt。
在参数编辑框中点击右侧的A->B按钮。
这时会d出参数的一个选择界面。在这个地方我选择了CurrentRun:Executable:FilePath这个参数。在界面下方我们可以看到这个参数代表的是E:/qt/build-Test-Desktop_Qt_5_11_2_MSVC2017_64bit-Debug/debug/Test,也就是执行程序所在路径和执行程序的名称。
但实际上我们还需要在该参数后面加个exe,表示这是执行文件。在有的版本中可以找到直接带exe的参数,但本人使用的Qt 5112中没有找到。如果有知道的朋友可以留言告知一下。
到这个时候我们的部署步骤就添加完成。接下来我们再找到编辑界面。只需点击左侧的编辑按钮即可。
然后在项目上右键点击,选择部署按钮。
在编译输出窗口看到以下信息说明部署完成。
接下来我们再看一下构建目录下的文件。这个时候我们发现这个目录下会多出很多dll文件。这就是我们执行文件所以来的动态库。我们把这个文件夹拷贝给用户,用户点击exe就可以运行了。但这种方式有个弊端就是会有很多中间文件,比如mainobg,mainwindowobj等。我们需要把这些文件删除或者写个脚本删除这个文件。
2cmd窗口部署exe程序
在cmd窗口部署exe程序之前,我们需要将windeployqt所在路径配置到环境变量中。
右键点击计算机,选择属性,d出下面的对话框,选择高级系统设置。
在系统属性中选择高级->环境变量。
选择系统变量的Path变量,点击编辑。
将windeployqt所在路径添加到变量值中(需要注意要在路径前添加;)。Windeployqt默认路径为C:\Qt\Qt5112\5112\msvc2017_64\bin。C:是我的Qt安装盘符,这个需要根据大家自己的路径选择。msvc2017_64是我使用的编译器。每个编译器下都有自己的Windeployqt。添加完成后点击确定按钮。准备工作已经做完了,我们可以开始部署程序。
首先我们将exe程序单独拷贝的一个文件夹中。
我们使用快捷键win+R打开运行界面,输入cmd点击回车。
还有另外一种方法是直接在文件夹路径位置输入cmd,点击回车。
这时打开的路径就是exe所在路径,否则需要先跳转到exe所在路径。
在cmd窗口输入windeployqt Testexe,然后点击回车。
看到如下信息就说明部署已经完成。我们只需要将此文件夹拷贝给用户即可。
3总结
Qt程序部署看似两种方法其实核心是一致的,都是调用windeployqt生成所需动态库,只不过是使用Qt Creator方法配置完成后只需点击按钮即可,更为方便一些。
程序不支持。新版本的Qt不支持原来的程序或者把一些API接口变更,导致出现运行不了的情况。qt51210运行不了可以查阅Qt官方文档,查看新版本引入了哪些新特性和变更,并依此修改你的程序使之支持新版本。
Qt是一个跨平台的C++图形用户界面应用程序框架。它提供给应用程序开发者建立艺术级的图形用户界面所需的所用功能。Qt是完全面向对象的,很容易扩展,并且允许真正地组件编程。
自从1996年早些时候,Qt进入商业领域,它已经成为全世界范围内数千种成功的应用程序的基础。Qt也是流行的Linux桌面环境KDE 的基础,KDE是所有主要的Linux发行版的一个标准组件。
Qt支持下述平台:
MS/Windows - 95、98、NT 40、ME、2000、XP 和 Vista
Unix/X11 - Linux、Sun Solaris、HP-UX、Compaq Tru64 UNIX、IBM AIX、SGI IRIX和其它很多X11平台
Macintosh - Mac OS X
Embedded - 有帧缓冲(framebuffer)支持的Linux平台,Windows CE。
Symbian/S60 - 目前已经可以提供技术预览版本
Qt是诺基亚公司的一个产品。
Qt被按不同的版本发行:
Q商业版 提供给商业软件开发。它们提供传统商业软件发行版并且提供在协议有效期内的免费升级和技术支持服务。如果要获得最新信息,请浏览诺基亚公司Qt Software网站页面,或者与sales@trolltechcom联系。商业版多一些扩展模块。
Qt开源版是Qt仅仅为了开发自由和开放源码软件, 提供了和商业版本同样的功能。GNU通用公共许可证下,它是免费的。最新的版本可以在这里下载。
从2009年3月发布的Qt 45 起,诺基亚将为Qt增添新的开源LGPL授权选择。
关于如何正确的选择这三种授权协议,可以阅读[1]。
从2009年5月11日起,诺基亚Qt Software 宣布 Qt源代码库面向公众开放,Qt 开发人员可通过为 Qt 以及与 Qt 相关的项目贡献代码、翻译、示例以及其他内容,协助引导和塑造 Qt未来的发展。为了便于这些内容的管理,Qt Software 启用了基于 Git 和 Gitorious 开源项目的Web 源代码管理系统[2] 。
在推出开放式 Qt 代码库的同时,Qt Software 在其官方网站发布了其产品规划(Roadmap)。其中概述了研发项目中的最新功能,展现了现阶段对 Qt 未来发展方向的观点,以期鼓励社区提供反馈和贡献代码,共同引导和塑造 Qt 的未来。
Qt 45版本
Qt 45涵盖了一些新的特色,它的最大改进是通过协同作用提升了整个框架的性能。图形系统、数据处理和网络引擎性能显著增强,实现了基于Qt的应用程序性能的明显提升。
Qt 45版本还提升了与WebKit页面渲染引擎的集成度,将Web和本地内容融合进丰富的用户体验当中。包括:
Netscape浏览器插件API支持,使Qt应用程序可以载入Flash(例如YouTube播放器) 更先进的Web 用户界面效果,包括动画、转换和缩放 新的JavaScript脚本语言引擎可提供更强的性能
Qt45还被移植进了苹果的Cocoa框架。之前的Qt只支持Carbon框架,现在的Qt 45两者都支持。这意味着开发人员能够以单一源代码创建出支持32位或64位字节的Intel或PowerPC Mac二进制文件。
Qt Creator
开发人员目前已经可以下载Qt Creator的11版本,这是一个用于Qt开发的轻量级跨平台集成开发环境。Qt Creator可带来两大关键益处:提供首个专为支持跨平台开发而设计的集成开发环境 (IDE),并确保首次接触Qt框架的开发人员能迅速上手和 *** 作。
Qt Creator包含了一套用于创建和测试基于Qt应用程序的高效工具,包括:
一个高级的C++代码编辑器 上下文感知帮助系统 可视化调试器 源代码管理 项目和构建管理工具
Qt Creator在LGPL 21版本授权下有效,并且接受代码贡献。目前的Qt Creator只支持桌面平台(Windows、Linux、Mac *** 作系统)的Qt开发,但随后数月就能支持嵌入式平台的开发。
2 为什么选择 QT
21 QT 是基於 C++ 的一种语言
相信 C/C++ 目前还是一种很多人都在学习的语言 QT 的好处就在於 QT 本身可以被称作是一种 C++ 的延伸 QT 中有数百个 class 都是用 C++ 写出来的 这也就是说, QT 本身就具备了 C++ 的快速、简易、Object-Oriented Programming (OOP)等等无数的优点
22 QT 具有非常好的可移植性(Portable)
QT 不只是可以在 Linux 中运作也同样可以运行在 Microsoft Windows 中这也就意味者,利用 QT 编写出来的程式,在几乎不用修改的情况下,就可以同时在 Linux 中和 Microsoft Windows 中运行 QT 的应用非常之广泛,从 Linux 到 Windows 从 x86 到 Embedded 都有 QT 的影子
3 什么是 QT Designer
简单的来说 QT Designer 是一个 GUI 的工具 这个工具可以帮助我们来加快写 QT 程式的速度 利用 QT Designer 可以用一种所见既所得的方式,来产生 QT 程式的 GUI 介面的程式码 通过增加一些功能,就可以完成一个程式了利用 QT Designer 可以非常快速的学会 QT, 而我们这里说利用 QT Designer 来学习 QT 而不是利用 QT Designer 来写 QT, 这里的区别就在於, QT Designer 所产生的程式码有些繁琐 跑起来也比较的慢些我们这里只是利用 QT Designer 来帮助我们学习而不是直接 去跑 QT Designer 生成的程式码
Qt软件开发工具包 (Qt SDK)
全新的Qt软件开发工具包,可从>
Qt 怎样设置应用程序图标以及release版本的主意事项
第一步,准备个ICO图标。
例如:myAppico 用任何的文本编辑器新建个文件 里面写上一行:
IDI_ICON1 ICON DISCARDABLE "myAppico"
第二步,保存改名为 myApprc并把它和你的图标myAppico一起放置到你的Qt工程的目录里面。 第三步,用文本编辑器打开你的Qt工程文件(如 myApppro ),在里面的最后面新添一行: RC_FILE = myApprc
第四步,在程序中添加如下代码: //app是程序中唯一的QApplication对象 appsetWindowIcon(QIcon("myAppico"));
注意:如果你的myApprc和你的图标myAppico不是在你的Qt工程目录里面,那么最后一句的代码中请指明图标文件的路径
在Tools->options->version
control中选择subversion,设置一些必要参数
之后在项目中就可以使用了
tools->subversion
以上就是关于qt怎么部属全部的内容,包括:qt怎么部属、qt5.12.8能运行的程序为啥qt5.12.10运行不了、什么是qt,QT Creator,QT SDK,QT Designer等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)