首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Linux系统下实现QT程序打包发布

一、环境介绍 操作系统环境: ubuntu18.04 64位 QT版本: 5.12 二、打包发布的过程 1. 先使用Release 编译QT程序 2....程序编译成功后,会在指定目录下生成一个文件夹,里面就包含了可执行程序。 比如: build-ffmpeg_code-Desktop_Qt_5_12_6_GCC_64bit-Release 3....将build-ffmpeg_code-Desktop_Qt_5_12_6_GCC_64bit-Release目录下的程序可执行文件也拷贝到camera_linux_app目录下。 (3)....为了发布过程不出现各种BUG,找不到库、找不到平台等等一系列问题,现在使用一个笨办法。 将QT使用的编译器目录下的所有库拷贝到camera_linux_app目录下,有覆盖的就不管。...脚本名称和可执行程序的名字样,后缀为.sh。 比如: 我的可执行程序名字是ffmpeg_code 。

8.2K41
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    QT之程序打包发布

    1.引言 QT开发完之后,如果直接把exe文件发给别人,是没法直接用的,因为会提示缺少很多库,一种方法是把这些库拷贝出来,一起发过去,但是这样不方便且文件很大,所以需要一种文件打包发布的方法。...3.具体步骤 1)打开一个QT程序,以release方式运行一次。操作如下图: ?...因为缺少QT必要的库文件。 ? 将这个.exe文件拷贝出来,创建一个单独的文件夹,放在这个文件夹下,比如桌面的test文件夹里。 ? 3)在开始菜单中,打开QT命令行窗口 ? ?...接着输入命令行,cd /d 路径(指的是需要打包的exe程序目录,就是刚才拷贝出来的exe程序所在的目录),回车 cd /d C:/Users/xxx/Desktop/test ?...4)输入如下命令行:windeployqt 程序名 敲击回车。这一步操作是将所需的库文件全都拷贝到exe程序的当前文件: ? ?

    2.5K30

    发布Qt程序打包工具

    由于Qt软件提供的windeployqt采用命令行操作,打包程序起来相对繁琐。而现有大多数的打包工具又不能针对Qt而打包,往往是一些库打包不成功,又或者操作繁琐。...也就是这一原因,决定写这个基于Windows系统的可视化Qt打包程序,并开源其代码供大家一起学习进步。 ? 1. 适用范围 Window系统; Qt5.0版本以上编译的程序。 2....使用方法 将需要打包的程序拖拽到打包工具中; 选择该程序编译时的Qt版本和编译器版本; 点击生成; 最后测试。 3. 注意 不能打包引入第三方库,需要自己复制到程序运行目录下。 4....aeagean/DeployQt/archive/V1.0.zip V1.0运行文件下载地址 https://github.com/aeagean/DeployQt/releases/download/V1.0/Qt.V1.0

    2K30

    1.2.2 Qt Quick 程序的发布

    我们要将自己的程序发布出去,首先需要使用release方式编译程序,然后将生成的.exe执行文件和需要的库文件放在一起打包发布。...要确定发布时需要哪些动态库文件,则可以直接双击.exe文件,提示缺少哪个dll,就到Qt安装目录的bin目录下(我机子上是D:\Qt\5.9.6\mingw53_32\bin),将对应的dll文件复制到当前文件夹下...大家现在的Qt版本应该都是5.0以上了,QT5自带的windeployqt(不需要下载安装),它可以找到程序(exe)用到的所有库文件,并且都拷贝到exe程序的当前文件。...步骤如下: 1、点击开始->所有程序->Qt 5.9.6->MinGW 5.3.0->Qt 5.9.6 for Desktop image.png 2、在命令行中切换到exe所在的目录下 image.png...Enigma Virtual Box: 点击主程序文件名称后面的浏览,直接选中刚才生成的exe执行程序; 输出虚拟文件名称默认为exe所在的目录下; image.png 7、将release

    1.5K50

    QT 应用编程: 应用程序动态发布

    一、QT程序发布方式 Qt 发布的时候,通常使用两种方式: (1)静态编译 (2)动态编译 静态编译:把相关联的库一并引入可执行程序,虽然发布简单,但可执行程序本身较大。...二、动态打包发布 2.1 打包工具 在QT5以后的版本中,Qt 的编译器安装包里自带了一个打包工具: windeployqt.exe windeployqt 工具可以自动复制插件文件夹和 dll 文件、...,可以得到完整的 exe 程序发布集合,解决所有的依赖关系,不用手动去一个一个复制(QT4程序发布就需要自己手打复制,比较麻烦)。 2.2 准备工作 1. 需要一个完整正常编译的 QT 工程。 2....2.4 打包发布(自动寻找依赖) 第一步: 将 QT 编译生成的 xxx.exe 可执行文件拷贝到一个单独的文件夹。...第二步: 按下键盘上的windows按钮,打开窗口列表,找到QT安装的位置(按字母排序的Q),选择当前QT程序编译时使用的编译器,打开命令行终端。 第三步: 切换到QT程序存放的目录下。

    1K20

    Qt-Windows下发布应用程序

    浏览量 1 编写好代码,编译通过之后,我们即可对程序进行发布,将构建配置切换到Release选项下,点击构建编译出我们需要的应用程序。...我们打开应用程序生成的目录,直接运行我们生成的应用程序,发现会出现报错,缺少相关的动态库。如果需要解决这个问题,我们可以将相关的库拷贝到应用程序下,但是这样做,显然有些麻烦。...我们可以使用windeployqt,windeployqt是 Qt 提供的 Windows 平台打包工具,它能找到可执行文件需要的所有动态链接库,并将它们拷贝到当前文件夹中。...创建一个文件夹,比如Publish,然后将可执行程序拷贝到Publish下。...找到对应版本的windeployqt执行windeployqt 应用程序.exe,比如你的构建套件是msvc2019 64 bit,你就可以在Qt\6.2.1\msvc2019_64\bin\路径下找到

    67810

    【Qt】Qt 开发桌面程序 ( Qt 版本 5.14.2 | 创建 Qt 桌面程序 | 构建并运行 Qt 桌面程序 )

    文章目录 一、创建 Qt 桌面程序 二、构建并运行 Qt 桌面程序 一、创建 Qt 桌面程序 ---- 首先要安装 Qt 开发环境 , 参考 【Qt】Qt 开发环境安装 ( Qt 版本 5.14.2 |...Qt 下载 | Qt 安装 ) 博客 ; 打开 Qt Creator 开发环境 , 选择 " 菜单栏 / File / 新建文件或项目 ( N ) " , 在弹出的 " New File or Project...- Qt Creator " 对话框中 , 选择左侧 Application 选项卡 , 选择 " Qt Widgets Application " 应用 , 然后点击 " Choose " 按钮 ,...桌面程序框架 ; 二、构建并运行 Qt 桌面程序 ---- 点击左下角的电脑图标 , 在弹出的对话框中配置一个构建套件 , 选择构建套件 : 构建好的应用变成如下样式 , 点击左下角的绿色三角形按钮..., 即可运行该 Qt 桌面程序 , 运行效果如下 :

    3.4K40

    3分钟教会你如何发布Qt程序

    导读:Qt程序编写好以后该如何发布。本文教你使用Qt自带工具windeployqt来进行操作。...本文字数:500,阅读时长大约:3分钟 (1)编写一个简单的程序 我们先做一个简单的窗口,添加一个图片资源文件,放置到窗口当中。 选择添加Qt Resource File文件类型 ?...因为.exe文件对其他文件有依赖关系,可以使用windeployqt解决,发布一套完整的程序及其依赖的库文件。...(3)使用windeployqt发布程序 将myTest.exe复制到要发布的文件夹下,比如D:\myTest\下 ? 在开始菜单中找到Qt cmd 工具,打开 ?...windeployqt会帮我们解决文件依赖关系,程序需要的库文件都生成在了文件夹中,并且资源文件也被编译到了二进制文件里。 ? 这次再运行myTest.exe,可以看到结果正常,发布结束。 ?

    87110

    QT程序打包发布Release时的注意事项

    好在QT提供了windeployqt.exe程序专门用来提取相关的DLL。但是这还是有个坑,这里记录下留作以后使用注意。...否则会报错,提示找不到libgcc_s_dw2-1.dll,即使你在电脑上找到它放进去也没用。 注意:如果是QML的应用,Qml的打包和QT传统的打包方式也是不同的。...QtWidgets/C++ 程序都不用 OpenGL,所以直接去掉即可。可在调用 windeployqt.exe 时加"--no-angle" 和 "--no-opengl-sw" 这两个参数。...通常把整个目录都删掉,Qt已经编译了 png 的支持,能读写程序包含的图标就够,其它格式不重要。 qmltooling 和 Qt5Network.dll 是用于 QML 调试用的,可以删掉。...压缩 Enigma virtual box是免费的软件虚拟化工具,它可以将多个文件封装到您的应用程序主文件,这样您的软件就可以制作成为单文件的绿色软件。

    2.1K20

    QT程序在发布的时候应注意的地方

    ---恢复内容开始---     我们用QT开发好的应用程序,如果要发布到其他计算机上运行怎么办呢?我们在用VC编程时,单独运行编译好的可执行文件时,经常会发现提示缺少动态库。...用QT编程也不例外,在一定程度上,编写好的QT程序会依赖一些动态链接库,包括MSVC运行库,已经QT自身的一些动态链接库。这是由于程序在编译时采用了动态链接的原因。...动态链接机制是程序开发的一把双刃剑。     既然问题出现了,我们想着解决的办法。很自然的一种想法就是,程序需要链接什么动态库,我们就给它找出来放在一起。...于是程序加载失败。     在QT5环境下,要确定需要哪些动态链接库,可以用Process Explorer来查看。我开发的程序所以来的动态库如下: ?...这几个是比较基本的动态链接库,这是因为程序简单。如果开发的功能复杂,程序所以来的动态库将更多。但是只要用process explorer一一找出来即可。 ---恢复内容结束---

    1.1K50

    【C++】Qt:基于windeployqt+nsis程序打包和发布

    1.windeployqt和nsis介绍 windeployqt是一个Qt提供的非常有用的命令行工具,用于将Qt应用程序所需的所有依赖项自动复制到应用程序的构建目录中,以便在没有Qt安装的计算机上运行应用程序...windeployqt可以自动查找并复制应用程序所需的Qt库文件、插件、QML文件以及其他依赖的库文件。...它还会自动解析应用程序的依赖关系,确保所有依赖的库文件都正确复制到目标目录中,以便应用程序能够正确运行。 使用windeployqt非常简单。...只需在命令行中运行以下命令: # 编译好release程序后,进入对应路径 windeployqt 这样就能确保应用程序能够在没有Qt安装的计算机上独立运行,...EN_INI EN_INI: ;想干啥干啥 Goto END ZH_INI: ;想干啥干啥 END: FunctionEnd 3.用NSIS软件编译脚本 加载上一步生成的脚本

    59910

    小程序上架以后确认发布

    代码审核与发布 小程序登录网址:https://mp.weixin.qq.com 1.点击左侧“版本管理” 2.页面最下方,开发版本,选择 提交审核 可在小程序未发布时选择体验版。...3.勾选同意,然后下一步,点击 继续提交 4.填写 版本描述,例如“新版本发布,修复部分功能bug等” 其他为选填,可以不用填写。...5.等待小程序审核通过。 注意事项:小程序提交审核前,在系统后台产品及分类,修改为你自己当初所选的范围相关产品。数量一个、两个都行。切记,一定要是行业相关。...6.审核通过,发布小程序 审核通过后,小程序可正式提交发布。选择全量发布。 大功告成,手机小程序搜索你的小程序名,或者扫小程序二维码即可查看小程序!!

    42630

    【Qt】HelloWorld程序

    如果你把鼠标悬停在label->setText上,你会看到这样的界面: Qstring是什么? 我们肯定知道C++中有String,那么这个Qstring是什么呢?...既然没有标准,那么Qt为了让自己的开发变得更流程,就自己发明了一套轮子。搞了一系列得基础类,在支持Qt得开发。...,因此,我们在开发Qt代码的时候,如果需要用到上书容器,可以使用标准库的容器,也可以使用Qt自己创建的容器。...前端开发也会涉及到类似的对象树(DOM),本质上也是一个树形结构,通过树形结构把界面的各种元素给组织起来。 Qt中也存在类似对象树把各种元素给组织起来。...注意: 如果我们对象改为栈上创建,此时就可以看到运行去了的程序无法显示HelloWorld,此时label对象随着析构函数的结束,就销毁掉了。

    4900

    QT 应用程序在 Windows 系统上出现中文乱码

    这几个月开始使用 QT 开发应用程序,不管是 Windows,还是 Linux 系统下,没怎么去特意配置,编写出来的应用程序不管哪国语言,都显示得挺好。...甚至在 Linux 系统语言选择英语,也可以正常显示中文、日文等。 但是今天碰到一个 QT 应用程序中文乱码问题,而且还是在 Windows 下,搞得措不及手。...情况是这样的,QT 代码是别人的,别人给的可执行程序也没有中文乱码问题。但是这个 QT 项目在我这边编译,编出来的程序就有乱码问题。...那问题是不是出在 Windows 下特有的 utf8 BOM 上呢? 这里提一下,BOM 代表 Byte order mark,也就是字节序标记,有2个作用: 1....鉴于 Windows 是使用最广泛的操作系统,尽管 Linux 程序员极度抵制 utf8 BOM,但也阻止不了。

    55210
    领券