Linux下QT使用appimage打包程序

一 打包工具

1.linuxdeployqt

下载地址:https://github.com/probonopd/linuxdeployqt/releases

2.patchelf

下载地址:https://nixos.org/releases/patchelf/patchelf-0.9/patchelf-0.9.tar.gz

二 配置linuxdeployqt

在这里插入图片描述
1.点击点击下载linuxdeploy-continuous-x86_64.AppImage

2.然后执行如下代码,将改名字后的linuxdeployqt移动到 /usr/local/bin目录下

sudo mv linuxdeployqt-continuous-x86_64.AppImage linuxdeployqt

sudo mv ./linuxdeployqt /usr/local/bin

chmod 777 linuxdeployqt

sudo linuxdelpoyqt --version

3.显示版本表示安装成功。

linuxdeployqt 5 (commit 37631e5), build 631 built on 2019-01-25 22:47:58 UTC

还要安装patchelf

三 配置patchelf

1.下载并且解压文件夹,进入patchelf解压的文件夹后执行如下命令

./configure
make
sudo make install

2.进入/usr/local/bin目录,执行ls命令出现一下情况

[root@192 bin]# ls
linuxdeployqt  patchelf

表示配置成功

四 打包程序

1.随便一个目录创建一个文件夹命名为output,我的目录为home/linjun/qtworkspace/output

2.将即将打包的程序的执行文件放进该output文件夹内,比如说我的执行程序名字是demotest(就只放QTCreator release模式下编译的一个执行文件就可以了)

3.然后进入该目录执行如下命令

sudo linuxdeployqt untitled -appimage

4.这时候一般会遇到这样的情况(如果没遇到直接跳过)

qmake: could not exec '/usr/lib/i386-linux-gnu/qt4/bin/qmake': No such file or directory
ERROR: qmake not found on the $PATH

原因:qtchooser默认选择路径中没有指向qmake路径,qtchooser默认路径在:

解决:

 PATH=$PATH:/home/oceanstar/qt-everywhere-opensource-src-4.8.7/bin

查询是否解决:在输出目录下运行:

$ qmake -v
QMake version 2.01a
Using Qt version 4.8.7 in /usr/local/Trolltech/Qt-4.8.7/lib

5、继续运行

sudo linuxdeployqt untitled -appimage

出现错误

Categories entry not found in desktop file
.desktop file is missing a Categories= key

说的是在.desktop文件中少了一个属性Categories,所以我们需要在desktop文件中手动加入一行:

Categories=Application;

注意;要加上去

再次执行 linuxdeployqt 命令即可。

发布了261 篇原创文章 · 获赞 84 · 访问量 26万+

猜你喜欢

转载自blog.csdn.net/zhizhengguan/article/details/105484890