超详细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目录下

 
  1. sudo mv linuxdeployqt-continuous-x86_64.AppImage linuxdeployqt

  2. sudo mv ./linuxdeployqt /usr/local/bin

  3. chmod 777 linuxdeployqt

  4. sudo linuxdelpoyqt --version

  5. linuxdeployqt 4 (commit 988d294), build 481 built on 2018-02-02 15:05:23 UTC

  6.  

 

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

但是还没玩,还要安装patchelf

三 配置patchelf

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

 
  1. ./configure

  2. make

  3. sudo make install

 

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

linuxdeployqt  patchelf

表示配置成功。但是还没玩。

四 打包程序

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

 

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

 

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

sudo linuxdeployqt demotest -appimage

 

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

qmake: could not exec '/usr/lib/i386-linux-gnu/qt4/bin/qmake': No such file or directory

原因:

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

/usr/lib/i386-linux-gnu/qt-default/qtchooser/default.conf

解决办法:

执行命令:

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

在第一行添加qt的bin目录:(我的是)

/home/linjun/myqt/5.11.0/gcc_64

保存退出后执行:

 
  1. linjun@linjun:~/qtworkspace/output$ qmake -v

  2. QMake version 3.1

  3. Using Qt version 5.11.0 in /home/linjun/myqt/5.11.0/gcc_64/lib

如果显示的版本跟你的QT版本是一样的,就表示成功。

5.这时候重新执行第3步命令生成应用程序如下

打包成功!

发布了25 篇原创文章 · 获赞 4 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/zhou8400/article/details/104544318
今日推荐