超详细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
linuxdeployqt 4 (commit 988d294), build 481 built on 2018-02-02 15:05:23 UTC

 

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

但是还没玩,还要安装patchelf

 

三 配置patchelf

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

./configure
make
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

保存退出后执行:

linjun@linjun:~/qtworkspace/output$ qmake -v
QMake version 3.1
Using Qt version 5.11.0 in /home/linjun/myqt/5.11.0/gcc_64/lib

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

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

打包成功!

 

  • 13
    点赞
  • 64
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
Linux系统下,有两种常用的方法可以打包QT程序。 第一种方法是通过脚本进行打包。这种方法简单方便,但是打包程序不能在其他干净的Linux系统中运行。你可以参考中提到的方法,编写一个脚本文件来进行打包。具体步骤如下: 1. 首先,确保你已经安装了所需的依赖库。你可以使用ldd命令来查找程序所需的共享库。 2. 创建一个脚本文件,可以使用任何你熟悉的文本编辑器。在脚本文件中,你需要指定程序的入口点以及程序所需的共享库路径。 3. 接下来,使用chmod命令给脚本文件添加可执行权限。 4. 最后,运行脚本文件来进行打包打包完成后,你会得到一个包含可执行文件和所需共享库的目录。 但需要注意的是,通过这种方式打包QT程序不能在其他干净的Linux系统中运行,所以不太推荐使用。 第二种方法是使用linuxdeployqt工具进行打包。这个工具可以方便地将QT程序打包成一个独立的可执行文件,可以在任何Linux环境中直接运行。你可以从中提供的链接下载linuxdeployqt使用linuxdeployqt进行打包的步骤如下: 1. 首先,下载并解压linuxdeployqt工具。 2. 将你的QT程序复制到linuxdeployqt的目录中。 3. 打开终端,并切换到linuxdeployqt的目录。 4. 运行以下命令来打包程序: ``` ./linuxdeployqt <path_to_your_qt_program> -appimage ``` 其中,`<path_to_your_qt_program>`是你的QT程序的路径。 5. 打包完成后,你将得到一个AppImage文件,这个文件就是你的打包好的程序。 通过使用linuxdeployqt工具进行打包,你可以得到一个可以在任何Linux环境中直接运行的QT程序。这种方法更加方便和可靠,推荐使用。 参考文献: 目前我接触到的Linux下的QT程序打包方法主要有两种:第一种:通过脚本进行打包,这种方法简单方便,但是通过这种方式打包QT程序,并不能放到另一台干净的Linux系统下运行,所以不太推荐;第二种:通过Linuxdeployqt进行打包,通过这种方法打包QT程序也很方便,而且打包程序可以放到任何Linux环境下直接运行。下面我将详细介绍以下两种打包方式,大家可以根据自己的实际使用情况任意选择打包方式。 1.下载linuxdeployqt:https://github.com/probonopd/linuxdeployqt/releases

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值