Linux下QT程序打包

这篇具有很好参考价值的文章主要介绍了Linux下QT程序打包。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Linux下QT程序打包

        网上有关QT程序打包的教程大多都是Windows下的教程,有关Linux下QT程序打包的教程很少,而且大多说的不是很详细,在这里我整理了以下有关Linux下QT程序打包的方法,仅供大家参考学习,有关Windows下QT程序打包的方法可以看我另一篇博客“QT项目超详细打包教程。

        目前我接触到的Linux下的QT程序打包方法主要有两种:第一种:通过脚本进行打包,这种方法简单方便,但是通过这种方式打包的QT程序,并不能放到另一台干净的Linux系统下运行,所以不太推荐;第二种:通过Linuxdeployqt进行打包,通过这种方法打包QT程序也很方便,而且打包的程序可以放到任何Linux环境下直接运行。下面我将详细介绍以下两种打包方式,大家可以根据自己的实际使用情况任意选择打包方式。

前提准备

       1. 不管通过那种打包方式进行QT程序打包,都要先通过release编译执行生成目标可执行文件。

linuxqt打包,qt,开发语言

        2.新建test文件夹(可以是任意文件夹)。

        3.找到release生成的可执行文件,并将其复制一份到我们新建的test文件夹。生成的可执行文件一般就存在于我们项目目录中的release文件夹下面的bin目录下。 下面是我的路径以及可执行文件。

linuxqt打包,qt,开发语言

一、通过脚本打包

        1.在我们新建的test文件夹下新建pach.sh脚本。

linuxqt打包,qt,开发语言

         脚本内容如下:其中exe后边的内容就收我们的可执行文件名称,des后边的内容就是我们test文件夹所在的路径,其他内容都不需要改变。

#!/bin/sh

exe="FiberConfigTool"

des="/临时文件/test/"

deplist=$(ldd $exe|awk '{if (match($3,"/")){printf("%s "),$3}}')

cp $deplist $des

        2.赋予脚本权限

linuxqt打包,qt,开发语言

         3.执行pach.sh脚本,通过执行脚本可以将可执行程序依赖的库都方到test文件夹下。

linuxqt打包,qt,开发语言

        4.新建FiberConfigTool.sh脚本,并赋予权限(可以是任何名称,建议命名为可执行文件的名称)。

linuxqt打包,qt,开发语言

        脚本内容如下:只需要修改appname后面的内容为我们的可执行文件名称即可,其他的不需要改变。

#!/bin/sh  

appname=FiberConfigTool #要运行的程序名

dirname=`dirname $0`

tmp="${dirname#?}"

if [ "${dirname%$tmp}" != "/" ]; then

dirname=$PWD/$dirname

fi

LD_LIBRARY_PATH=$dirname

export LD_LIBRARY_PATH

$dirname/$appname "$@"

         5.运行FiberConfigTool.sh脚本运行程序即可,到此通过脚本打包完毕。

linuxqt打包,qt,开发语言

 二、通过linuxdeployqt进行打包

        1.下载linuxdeployqt:https://github.com/probonopd/linuxdeployqt/releases

linuxqt打包,qt,开发语言

        2.将下载下来的linuxdeployqt-x86_64.AppImage重命名为linuxdeployqt,之前的名字太长,看着别扭。

linuxqt打包,qt,开发语言

        3. 赋予linuxdeployqt权限

linuxqt打包,qt,开发语言

        4.将修改好的linuxdeployqt放到/usr/local/bin目录下,这样我们在任何地方都能够运行 linuxdeployqt。

linuxqt打包,qt,开发语言

         5.测试linuxdeployqt是否安装成功,出现以下内容表示安装成功。

linuxqt打包,qt,开发语言

         6.修改文件bashrc文件

linuxqt打包,qt,开发语言

        在bashrc文件最后追加以下内容:其中/opt/qtcreator-4.14.0/bin是QT的安装路径修改成自己的即可。

#add qt env
export PATH=/opt/qtcreator-4.14.0/bin/:$PATH
export LIB_PATH=/opt/qtcreator-4.14.0/bin/lib:$LIB_PATH
export PLUGIN_PATH=/opt/qtcreator-4.14.0/bin/plugins:$PLUGIN_PATH
export QML2_PATH=/opt/qtcreator-4.14.0/bin/qml:$QML2_PATH

        不知道自己QT安装路径的可以通过下面方法获取:whereis qt

linuxqt打包,qt,开发语言

         7.使用source命令让bashrc文件立即生效

linuxqt打包,qt,开发语言

        8.测试环境变量,查看是否正确,看到qmake版本表示正确。

linuxqt打包,qt,开发语言

        9.拷贝依赖文件,如有报错直接忽略等待命令执行完毕即可。

linuxqt打包,qt,开发语言

        10. 切换到新建的test文件夹下,执行可执行文件,查看是否打包成功,到此通过linuxdeployqt打包完毕。

linuxqt打包,qt,开发语言文章来源地址https://www.toymoban.com/news/detail-597086.html

到了这里,关于Linux下QT程序打包的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Linux 下使用 linuxdeployqt 打包QT程序

    当别人需要使用我们的 Qt 程序时,我们可以用打包工具将程序打包发给他,这样就不用发送整个 Qt 工程。由于 Qt 跨平台的特性,可以用不同的工具打包它。本篇文章是在 Linux 下使用 linuxdeployqt 将 Qt 程序打包成 .AppImage 应用程序。 环境介绍: Ubuntu 16.04 QT 5.12.12 linuxdeployqt(

    2024年02月03日
    浏览(34)
  • Linux下打包发布QT程序,并运行在其他没有安装QT环境的linux系统上

    一、Linux下打包发布步骤如下 编译应用程序环境:ubuntu18.04版本 开发环境:Qt5.14.2 编译环境:gcc_64 要移植的电脑:ubuntu18.04版本,没有开发环境 第一步:打包依赖库 1、创建一个打包目录,把生成的可执行文件拷贝放在创建的打包目录下,这里我是创建了一个打包目录名称为

    2024年02月12日
    浏览(30)
  • 实测好用的Linux下打包发布Qt程序的方法(使用linuxdeployqt)

    自己试过能够打包好Qt程序,然后发给别人也能正常使用。 需要在github上下载编译好的 linuxdeployqt-x86_64.AppImage 应用程序文件。 下载后将其改名为linuxdeployqt(方便使用),在终端对其chmod +x 加权限,然后复制到 /usr/local/bin/中(终端能识别该路径下的执行文件) 终端输入 lin

    2024年02月13日
    浏览(30)
  • linux平台下qt程序的编译以及使用linuxdeployqt打包可执行程序和在高版本22.04ubuntu下使用linuxdeployqt打包文件的问题

    写于2023.10.20 最近遇到了一个问题,需要把在windows下面写好的qt程序打包成linux可以运行的文件进行发布,而且最终目标和windows一样,要在一个近乎于纯净环境的机器上进行运行,故而有了这个博客,记录了我们小组攻克的一系列问题 由于是已经攻克过后才有的这一篇博客,

    2024年02月04日
    浏览(33)
  • Qt程序打包成一个单独exe的方法 Qt程序打包成一个单独exe的方法

    目录 Qt程序打包成一个单独exe的方法 程序发布 程序打包 问题 Qt程序发布及打包,同时修改可执行文件的图标。本教程使用Qt自带的  windeployqt  工具外加 Enigma Virtual Box 打包工具。首先需要知道的是,Qt程序发布需要的程序是用  Release  方式编译的。下面看一下具体的操作。

    2024年02月11日
    浏览(36)
  • Qt的程序打包

    设置应用程序的图标,在Qt的pro中加入 RC_ICONS = 图标名.ico,到网上找个在线转换ico的工具即可, 1.qt的编译模式切换到release版本  2.编译运行后找到自己放代码的位置,release版本的  3.新建一个空文件夹,把exe程序单独拷出来放到空文件夹中 4. 打开Qt的命令行窗口,windeployq

    2024年02月07日
    浏览(45)
  • Qt程序打包exe

    步骤一:Release编译 步骤二:将步骤一生成的Release文件夹中的exe文件单独拷贝到另一个文件夹,如 D:Program FilesUI 步骤三:打开命令行工具 步骤四:在命令行中首先将路径定位到步骤二中存放exe文件的文件夹: cd D:Program FilesUI ,然后使用 windeployqt 工具命令: D:Qt25.14.1m

    2024年02月13日
    浏览(34)
  • QT可执行程序打包成安装程序

    目录 1.将QT程序先放到一个文件中 2.下载QtInstallerFramework-win-x86.exe 3.将setup.exe单独拷贝出来,进行安装测试 4.测试安装后的程序是否可执行 (1)QT切换到release模式,编译后在构建目录生成可执行文件,例如myqml.exe,把该文件复制到一个单独文件夹;         a.QT切换到rel

    2024年02月10日
    浏览(25)
  • QT程序打包成安装包

    1、将QT程序先放到一个文件中 (1)QT切换到release模式,编译后在构建目录生成可执行文件,例如myqq.exe,把该文件复制到一个单独文件夹; (2)在开始菜单找到QT,在里面找cmd命令行程序,类似“Qt 5.14.2 (MinGW 7.3.0 32-bit)”,点击运行;                                 (

    2024年02月09日
    浏览(27)
  • Qml Qt程序 打包部署

    利用qtcreator安装目录下的命令行工具执行打包命令 1、Widget程序打包 // 将release模式下的exe文件放在单独的打包目录下 // 打开qt自带的命令行工具,执行下面的语句 windeployqt path-to-app-binary  // path-to-app-binary表示需要打包的二进制文件 2、Qml程序打包 // 延用Widget程序打包步骤,

    2024年02月09日
    浏览(42)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包