IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> Linux QT GUI 界面程序打包 linuxdeployqt -> 正文阅读

[系统运维]Linux QT GUI 界面程序打包 linuxdeployqt

说明:

1.主要依赖linuxdeployqt打包工具

2.打包Linux上的QT界面软件,使其不依赖QT开发环境

linuxdeployqt安装过程:

  • 不能下载官方编译好的.appimage文件,会报告gblic的问题
  • 下载官方源码
  • 修改main.cpp,屏蔽掉版本判断部分,否则还会报gblic的问题

编译安装过程:

1.根目录下:cmake CmakeList.txt

2.make?? //此时tool/linuxxxxx下会生成linuxdeployqt可执行的二进制文件,

3.将linuxdeployqt可执行文件复制到/usr/local/bin,之后? sudo chmod 777 linuxdeployqt

参考链接:

(本人实测!)Linux下使用linuxdeployqt打包Qt项目用于移植 - 灰信网(软件开发博客聚合)

Ubuntu下使用linuxdeployqt打包Qt程序 - 星星,风,阳光 - 博客园

其他工具:

1.?patchelf

sudo apt install patchelf

2. appimage

https://github.com/AppImage/AppImageKit/releases/download/continuous/appimagetool-x86_64.AppImage

?下载完成后执行如下命令:

sudo mv appimagetool-x86_64.AppImage appimagetool

chmod 777 appimagetool

sudo./appimagetool /usr/local/bin

以上安装完成后进入usr/local/bin目录执行ls其中包含如下三个则说明打包工具安装成功,之后就可以开心的进行项目移植打包喽!

可能报错:

1.ERROR: "/usr/bin/qmake -query" exited with 1 : "qmake: could not exec '/usr/lib/x86_64-linux-gnu/qt4/bin/qmake': No such file or directory\n?? 找不到qt

分析:

?qtchooser默认选择路径中没有指向qmake路径,需修改成自己的路径

解决方法:

cd /usr/lib/x86_64-linux-gnu/qt-default/qtchooser

vim default.conf

打包过程:

1.创建一个collectdabao文件夹,考入datacollect文件(QT-release模式下编译形成的可执行文件)

2. linuxdeployqt? datacollect --appimage

3.此时该目录下会有lib doc plugins translations文件夹等众多so文件

4.修改或创建./desktop文件,复制到桌面,chmod 777???? 双击----信任此文件

./desktop 内容

[Desktop Entry]

Encoding=UTF-8

Name=COLLECT

Exec=/home/mlw/Desktop/collectdabao/datacollect? #根据软件的具体执行路径修改,务必是绝对路径

#Icon=/home/home/Desktop/icon.png? #根据软件的具体执行路径修改

Terminal=false? #软件打开时是否启动终端

StartupNotify=false

Type=Application

Categories=Application;Development;

更新软件包注意事项

  • 不能只更新datacollect可执行文件,需重新执行打包
  • 打包后将目标机器内的所有文件进行更新

更新流程:

1.QT-relese编译,生成新的datacollect文件

2.cp datacollect? 到打包文件夹

3.在打包文件夹执行linuxdeployqt? datacollect -appimage

4.传输文件夹下所有文件到目标机软件目录

?? sudo scp * mlw@192.168.1.244:~/Desktop/collectdabao?

打包结果(有两种,目前没搞懂原因):

可能由于linuxdeployqt版本原因,产生结果不一样

1.更好的结果

生成.AppImage结尾的文件,这个文件可以直接运行

2.较差的结果,可能还会依赖QT

生成新的可执行文件和.desktop文件,需要修改.desktop里面的路径

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2022-04-15 00:46:32  更:2022-04-15 00:49:48 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 21:49:34-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码