ubuntu使用linuxdeployqt打包发布Qt程序

3 篇文章 0 订阅

1.安装linuxdeployqt

(1)下载linuxdeployqt,下载地址:https://github.com/probonopd/linuxdeployqt/releases

(2)在终端中依次执行以下命令:

sudo chmod a+x linuxdeployqt-x86_64.AppImage
sudo mv linuxdeployqt-x86_64.AppImage linuxdeployqt
sudo mv linuxdeployqt /usr/local/bin
linuxdelpoyqt --version
#输出的版本信息
linuxdeployqt (commit aeafcd2), build 13 built on 2022-01-28 22:37:07 UTC

输入以上命令时若提示无权限,则在命令前加sudo

2.安装patchelf

在终端中依次执行以下命令:

wget https://nixos.org/releases/patchelf/patchelf-0.9/patchelf-0.9.tar.bz2
tar xf patchelf-0.9.tar.bz2
cd patchelf-0.9/ 
./configure  
make
sudo make install

3.安装appimagetool

在终端中依次执行以下命令:

sudo wget -c "https://github.com/AppImage/AppImageKit/releases/download/continuous/appimagetool-x86_64.AppImage" -O /usr/local/bin/appimagetool
sudo chmod a+x /usr/local/bin/appimagetool

4.检查以上软件安装是否成功

在终端中执行以下命令:

ls /usr/local/bin/
#命令输出结果
appimagetool linuxdeployqt patchelf

输出结果如上图,则说明软件安装成功

5.设置qmake版本

在终端中输入以下命令,查看当前默认的qmake版本

qmake -v
#输出结果如下:
QMake version 2.01a
Using Qt version 4.8.7 in /usr/lib/x86_64-linux-gnu

若输出结果和你安装的版本一致,则无须重新设置qmake版本;若不一致,则需要修改配置文件来重新设置qmake版本,方法如下:

sudo chmod 777 /usr/lib/x86_64-linux-gnu/qt-default/qtchooster/default.conf
vim /usr/lib/x86_64-linux-gnu/qt-default/qtchoooster/default.conf

将文件中的内容由:
/usr/lib/x86_64-linux-gnu/qt4/bin
/usr/lib/x86_64-linux-gnu
改为自己安装的qt版本:
/opt/Qt5.9.9/5.9.9/gcc_64/bin
/opt/Qt5.9.9/5.9.9/gcc_64/lib

6.打包发布

(1)编译release版本的Qt工程,将编译好的软件(例如myApp)放到一个单独的文件夹,在文件夹中执行命令:

linuxdeployqt myApp -appimage

执行上面命令后,会出现如下错误:
...
...
Categories entry not found in desktop file
.desktop file is missing a Categories=key

出现上面的错误后,需要修改一下default.desktop文件,添加Categories,如下:

[Desktop Entry]
Categories=Application;
Version=1.0
Type=Application
Name=myApp
Exec=AppRun %F
Icon=default
Comment=Edit this default file
Terminal=true

修改完成后,重新执行命令:

linuxdeployqt myApp -appimage

执行命令过程中会提示一些warning,不用管,只要最后生成了xxx-x86_64.appImage,则说明打包发布成功。xxx-x86_64.appImage即为我们最终需要的文件。

参考文档:

https://github.com/probonopd/linuxdeployqt/blob/master/BUILDING.md

https://www.cnblogs.com/linuxAndMcu/p/11016322.html

https://blog.csdn.net/qq_30065853/article/details/100974396

https://blog.csdn.net/qq_30065853/article/details/100985143

http://www.bdlmobile.com/index/index/news/aid/68.html

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值