首页 > 系统相关 >Linux系统打包Qt

Linux系统打包Qt

时间:2024-08-06 15:20:15浏览次数:12  
标签:lanzoum Qt wwpp https Linux PATH com 打包

因为使用了 QWebEngineView,所以遇到了打包问题,记录一下我的失败过程。等以后有机会再接着弄吧

目前知道的打包方式有三种:

1.linuxdeplot + linuxdeploy-plugin-qt

2.linuxdeplotqt + appimagetool

3.使用脚本,收集 ldd 显示的依赖库

 

第一种(linuxdeplot + linuxdeploy-plugin-qt),网上资料少,不准备用这种

第二种(linuxdeplotqt + appimagetool),kylin官方有出文档,详细介绍了使用方法,我要兼容UOS,用了以后没有成功

2.1 首先是下载这两个东西

linuxdeployqt 源码地址:https://github.com/probonopd/linuxdeployqt
x86-64 架构:https://wwpp.lanzoum.com/ipftx0o9tura 密码:630z
arm64 架构:https://wwpp.lanzoum.com/iElNK0o9tuve 密码:4vhg
mips64el 架构:https://wwpp.lanzoum.com/ilv9V0o9tule 密码:8j2v
loongarch64 架构:https://wwpp.lanzoum.com/iq4000o9tung 密码:az5r

appimagetool 源码地址:https://github.com/AppImage/AppImageKit
x86-64 架构:https://wwpp.lanzoum.com/iES3j0o9t5wf 密码:dqwo
arm64 架构:https://wwpp.lanzoum.com/igZig0o9t5qj 密码:68ek
loongarch64 架构:https://wwpp.lanzoum.com/iUzkL0o9t5oh 密码:1jtx

 

2.2 重命名这两个工具,并放入系统环境

mv linuxdeployqt-continuous-x86-64.AppImage linuxdeployqt
mv appimagetool-x86-64.AppImage appimagetool

sudo cp linuxdeplotqt /usr/bin/
sudo cp appimagetool /usr/bin/

 

2.3 设置Qt环境路径

# 修改 bashrc 文件
sudo vi ~/.bashrc

 

# 在文件最后面加入自己的Qt环境路径
QT_DIR=/home/hy/Qt/5.15.2/gcc_64
export PATH=${QT_DIR}/bin:$PATH
export LIB_PATH=${QT_DIR}/lib:$LIB_PATH
export PLUGIN_PATH=${QT_DIR}/plugins:$PLUGIN_PATH
export QML2_PATH=${QT_DIR}/qml:$QML2_PATH
export LD_LIBRARY_PATH=${QT_DIR}/lib:$LD_LIBRARY_PATH

 

# 立即更新 bashrc 文件
source ~/.bashrc

 

2.4 执行命令,打包Qt

linuxdeplotqt qtAppName -appimage

 

 

第三种(使用脚本,收集 ldd 显示的依赖库),也是没有成功

创建sh文件

#!/bin/bash
LibDir=$PWD"/lib"
Target=$1
lib_array=($(ldd $Target | grep -o "/.*" | grep -o "/.*/[^[:space:]]*"))
$(mkdir $LibDir)
for Variable in ${lib_array[@]}
do
    cp "$Variable" $LibDir
done

 

 

 

其他:

打开Qt的调试,在运行软件,可以看到详细报错

export QT_DEBUG_PLUGINS=1

./app

 

 

 

 

  

 

标签:lanzoum,Qt,wwpp,https,Linux,PATH,com,打包
From: https://www.cnblogs.com/shiyixirui/p/18345192

相关文章

  • linux基础命令
    一、文件和命令1、cd命令   cd/home进入‘/home’目录   cd…返回上一级目录   cd…/…返回上两级目录   cd/返回跟目录   cd-返回上次所在的目录   mkdir<目录名>创建目录   mkdirdir1dir2同时创建两个目录   mk......
  • App Inventor 2 MQTT拓展入门(保姆级教程)
    本文通过一个零门槛的MQTT入门级测试案例,带大家熟悉一下MQTT的开发步骤,让大家对MQTT通信模型有一个比较直观的认识。准备工作APPINVENTOR测试平台:AppInventor2中文网(https://www.fun123.cn)MQTT拓展下载:MQTT中文文档页面进行下载。MQTT测试平台:中文平台推荐:bemfa.com......
  • Linux的netns使用总结
     转载请注明出处:Linux的netns(NetworkNamespace)是Linux内核提供的一项强大的网络隔离功能,它能够创建多个独立的网络空间,每个空间都拥有自己独立的网络协议栈,包括网络接口(网卡)、路由表、iptables规则等。这种隔离机制使得不同的应用程序或服务可以在互不干扰的网络环境中运行......
  • Android逆向:修改APK并重打包签名
    在Android逆向中,经常需要对APK修改,然后重新打包并签名。这篇文章中,介绍了如何使用各个工具来完成这个过程。各个步骤以及所需工具:解压APK文件; 工具:apktool进行修改;     工具:看修改需求重新打包APK; 工具:apktool将APK对齐;   工具:zipalign生成密钥文件,并对AP......
  • Ubuntu 24.04 LTS Linux上安装Azure Data Studio
    AzureDataStudio是由Microsoft开发的开源数据库管理和开发工具。它是一种跨平台数据库管理工具,可在所有流行的操作系统(Windows、macOS和Linux)上运行。该软件提供了一个现代编辑器和丰富的界面,用于管理各种数据库系统,例如MicrosoftSQLServer、PostgreSQL等。它还为......
  • 在Linux命令行中检查固件版本的7种方法
    当前有几种方法可以检查Linux上的固件或BIOS版本,这有助于解决硬件问题,对于保持系统安全和最新至关重要。在本文中,我们将了解获取系统固件版本的工具和命令,这些固件版本与BIOS、UEFI或设备特定的固件有关。每种方法都提供了一种简单的方法,可帮助您快速确定当前固件版本并......
  • 【Linux】常用命令——vim
    菜鸟教程学习笔记Linuxvi/vim|菜鸟教程(runoob.com)Vim是从vi发展出来的一个文本编辑器。代码补全、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。是一个程序开发工具而不是文字处理软件。1.vi/vim的使用基本上vi/vim共分为三种模式,命令模式(Co......
  • linux 扩容
    工具fdisk只支持MBR分区模式parted同时支持MBR和GPT分区扩容在线扩容partedroot@kzf:~#lsblkNAMEMAJ:MINRMSIZEROTYPEMOUNTPOINTSsda8:00446.6G0disk├─sda18:101G0part/boot/efi└─sda28:2092.1G0part/parted/dev/sdaresizep......
  • 简单的mysqldump备份(linux)
    备份小数据库用mysql自带的mysqldump就可以完成备份,写一个简单的适用于linux下跑的脚本。策略每天凌晨1点全备,保留7天备份脚本dbbak.sh#!/bin/bashexportPATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/mysql/bin:/root/bin:/usr/local/......
  • linux进程篇总结——实战——自定义shell
        前言:经过过去两章十二篇文章的学习,我们已经知道了进程的基本概念以及进程的控制方法。本篇内容就是使用过去学习的内容自己写一个功能简单的shell外壳程序,也就是我们使用的bash命令行。本篇内容是过去进程知识的集大成者。我们在这个实战程序中,将过去学过的......