Ubuntu下Qt程序进行打包

1、准备linuxdepoyqt打包工具

下载linuxdeployqt的程序(打包qt程序的工具)
下载链接:https://github.com/probonopd/linuxdeployqt/releases
下载appimage的包 linuxdeployqt-countinuous-x86_64.AppImage
更改安装包权限

sudo chmod 777 linuxdeployqt-countinuous-x86_64.AppImage

拷贝到 /usr/local/bin目录下

sudo cp linuxdeployqt-countinuous-x86_64.AppImage /usr/local/bin/linuxdeployqt

测试, 打印版本信息,检查是否正确安装

linuxdeployqt -version

输出结果如下所示

linuxdeployqt 版本信息

若是ARM,linuxdeplpoyqt 需要进行编译安装

2、检查qmake环境变量

(1)在终端命令行中输入qmake -v检查qmake是否有正确的qmake版本
如果qmake版本和当前使用的一致则执行步骤3
在这里插入图片描述

(2)若显示的qmake版本不正确或者no such file,执行如下操作

sudo vim /usr/lib/x86_64-linux-gnu/qt-default/qtchooser/default.conf

根据自己电脑名称更改pc_name,修改default.conf文件内容如下所示:

/home/pc_name/Qt5.12.12/5.12.12/gcc_64/bin
/home/pc_name/Qt5.12.12/

(3)若如下显示
在这里插入图片描述
执行

sudo apt install qtchooser

安装成功后,再次执行步骤(2)

3.进行打包

将编译好的qt程序编译输出的可执行文件App(Release版本)放到一个空目录下,执行如下命令

sudo linuxdeployqt App -appimage

该命令会自动复制所需库文件。
自动生成的.desktop文件分类报错
打开自动生成的Application.desktop进行编辑,添加Categories = Application;(注意分号不可省略)

sudo vim default.desktop

添加Categories = Application;
在这里插入图片描述

然后重新执行

sudo linuxdeployqt Appname-appimage -unsupported-allow-new-glibc

4.生成的Application-x86 _64.AppImage为打包好的软件

./Application-x86_64.AppImage或
sudo ./Application-x86_64.AppImage

即可运行

注:遇到问题

(1)执行步骤3的命令后若提示缺少库,安装对应的环境。如libpq.so.5

sudo apt update
libpq.so.5
sudo apt-get install libpq-dev

(2)部分系统可能无法运行AppImage文件会出现如下提示:

可通过以下命令解决:

sudo apt install fuse libfuse2

(3)兼容性问题
本打包方法是在Ubuntu16.04系统使用的,打包后的软件可以在更高版本的系统中运行。由于Linuxdelpoyqt的原因,在高版本直接用sudo linuxdeployqt Appname-appimage命令不能成功打包,会有一下提示:
在这里插入图片描述
这时候需要将打包命令更换为

sudo linuxdeployqt Appname-appimage -unsupported-allow-new-glibc

其余操作和步骤3相同。但是打包后的软件不能在一些低版本的Ubuntu上运行,比如Ubuntu16.04.会出现以下提示:
在这里插入图片描述

参考文章:

https://blog.csdn.net/skl5879166/article/details/124247975
https://www.jianshu.com/p/779255161e7c
https://blog.csdn.net/qq_45662588/article/details/122660879
https://blog.csdn.net/qq_36071362/article/details/124141210

  • 5
    点赞
  • 74
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值