文档章节

超详细Linux下QT使用appimage打包程序

shzwork
 shzwork
发布于 09/18 21:22
字数 647
阅读 35
收藏 1

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/kuer1379/article/details/82885810
一 打包工具
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步命令生成应用程序如下


打包成功!
————————————————
版权声明:本文为CSDN博主「kuer1379」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/kuer1379/article/details/82885810

本文转载自:https://blog.csdn.net/kuer1379/article/details/82885810

shzwork
粉丝 15
博文 805
码字总数 10675
作品 0
厦门
私信 提问
Linux Qt程序打包成一个可执行文件

最近用Qt写了一个上位机, 而且是跨平台(Windows, Linux, ARM-Linux), 开发完成后需要对程序进行打包, windows的打包非常容易,选择非常多, 但是linux下面的选择就少了些. 方案的选择 Qt官方有...

sy373466062
2017/06/20
0
0
linux Qt程序打包(linuxdeployqt工具的使用)

linux Qt程序打包(linuxdeployqt工具的使用) 官方提供的最新版本基于Qt5.8的,用户可根据需要从源码编译成本机版本来使用,具体操作过程如下: 工具 1.linuxdeployqt 依赖工具: patchelf(必须...

shzwork
09/18
12
0
centos7 linuxdeployqt qt5.13.1 打包程序

原文链接:https://www.cnblogs.com/linuxAndMcu/p/11016322.html 一、简介 linuxdeployqt 是Linux下的qt打包工具,可以将应用程序使用的资源(如库,图形和插件)复制到二进制运行文件所在的...

shzwork
09/18
20
0
Qt程序发行Linux版,软件打包知识

patchelf 工具可以修改已编译运行程序的依赖库位置和指定库链接器 patchelf --set-rpath patchelf --set-interpreter 通过这个工具 https://github.com/probonopd/linuxdeployqt 如果自己编译...

lieefu
2016/10/11
274
0
在Linux下使用linuxdeployqt发布Qt程序

目录 一、简介 二、安装linuxdeployqt 三、配置 qt 的环境变量 四、打包应用程序 五、编写linux桌面图标启动(可选步骤) 六、编写开机脚本 runApp.sh 七、打包成deb包 八、扩展 回到顶部 一...

shzwork
09/19
38
0

没有更多内容

加载失败,请刷新页面

加载更多

golang-字符串-地址分析

demo package mainimport "fmt"func main() {str := "map.baidu.com"fmt.Println(&str, str)str = str[0:5]fmt.Println(&str, str)str = "abc"fmt.Println(&s......

李琼涛
今天
4
0
Spring Boot WebFlux 增删改查完整实战 demo

03:WebFlux Web CRUD 实践 前言 上一篇基于功能性端点去创建一个简单服务,实现了 Hello 。这一篇用 Spring Boot WebFlux 的注解控制层技术创建一个 CRUD WebFlux 应用,让开发更方便。这里...

泥瓦匠BYSocket
今天
8
0
从0开始学FreeRTOS-(列表与列表项)-3

FreeRTOS列表&列表项的源码解读 第一次看列表与列表项的时候,感觉很像是链表,虽然我自己的链表也不太会,但是就是感觉很像。 在FreeRTOS中,列表与列表项使用得非常多,是FreeRTOS的一个数...

杰杰1号
今天
9
0
Java反射

Java 反射 反射是框架设计的灵魂(使用的前提条件:必须先得到代表的字节码的 Class,Class 类 用于表示.class 文件(字节码)) 一、反射的概述 定义:JAVA 反射机制是在运行状态中,对于任...

zzz1122334
今天
7
0
聊聊nacos的LocalConfigInfoProcessor

序 本文主要研究一下nacos的LocalConfigInfoProcessor LocalConfigInfoProcessor nacos-1.1.3/client/src/main/java/com/alibaba/nacos/client/config/impl/LocalConfigInfoProcessor.java p......

go4it
昨天
9
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部