当前位置: 首页 > news >正文

linux x86_64中打包qt

下载安装

地址: Releases · linuxdeploy/linuxdeploy

mv linuxdeploy-x86_64.AppImage linuxdeployqtchmod 777 linuxdeployqtsudo mv linuxdeployqt /usr/local/bin/linuxdeployqt --version

报错

Applmage默认依赖FUSE,需要挂载自身为虚拟文件系统才能运行, ubuntu24.04没有预装,手动安装

sudo apt update -y

sudo apt install libfuse2

输出版本信息安装成功

准备qt可执行文件

新建package文件夹准备打包, 将可执行文件复制进来,笔者这里就直接在build目录同级创建了

mkdir package && cd packagecp ../build/simulation_client .ldd simulation_client

笔者打包是要用到两个工具,就直接手动下载了

runtime-x86_64和appimagetool

Releases · AppImage/AppImageKit

Releases · AppImage/AppImageKit

打包脚本

#!/bin/bash
set -eAPP_NAME="simulation_client"
EXECUTABLE="./$APP_NAME"
ICON_FILE="./simulation.png"
ICON_NAME="simulation"
DESKTOP_FILE="$APP_NAME.desktop"
APPDIR="$APP_NAME.AppDir"
RUNTIME_FILE="./runtime-x86_64"
APPIMAGETOOL="./appimagetool"# 检查可执行文件是否存在
if [ ! -f "$EXECUTABLE" ]; thenecho "错误:可执行文件 $EXECUTABLE 不存在"exit 1
fi# 检查图标文件是否存在
if [ ! -f "$ICON_FILE" ]; thenecho "错误:图标文件 $ICON_FILE 不存在"exit 1
fi# 检查 appimagetool 是否存在
if [ ! -f "$APPIMAGETOOL" ]; thenecho "错误:appimagetool 不存在,请手动下载并放在当前目录"echo "下载地址:https://github.com/AppImage/AppImageKit/releases/download/continuous/appimagetool-x86_64.AppImage"exit 1
fi# 检查 runtime 是否存在
if [ ! -f "$RUNTIME_FILE" ]; thenecho "错误:runtime-x86_64 不存在,请手动下载并放在当前目录"echo "下载地址:https://github.com/AppImage/type2-runtime/releases/download/continuous/runtime-x86_64"exit 1
fi# 设置可执行权限
chmod +x "$EXECUTABLE"
chmod +x "$APPIMAGETOOL"# 生成桌面文件
cat > "$DESKTOP_FILE" << EOF
[Desktop Entry]
Type=Application
Name=Simulation Client
Exec=$APP_NAME
Icon=$ICON_NAME
Categories=Utility;
Terminal=false
Comment=Simulation Client Application
EOFecho "桌面文件已生成: $DESKTOP_FILE"# 清理旧的 AppDir
rm -rf "$APPDIR"# 使用 linuxdeployqt 部署依赖、桌面文件和图标
linuxdeployqt \--appdir="$APPDIR" \-e "$EXECUTABLE" \-d "$DESKTOP_FILE" \-i "$ICON_FILE"# 复制图标到多个标准尺寸目录
SIZES=("16x16" "32x32" "64x64" "128x128" "256x256")
for size in "${SIZES[@]}"; domkdir -p "$APPDIR/usr/share/icons/hicolor/$size/apps"cp "$ICON_FILE" "$APPDIR/usr/share/icons/hicolor/$size/apps/${ICON_NAME}.png"
done
echo "图标已复制到多个标准尺寸目录"# 生成 AppImage,指定输出文件名
echo "正在使用本地工具生成 AppImage..."
"$APPIMAGETOOL" \--runtime-file "$RUNTIME_FILE" \"$APPDIR" \"simulation_client.AppImage"# 自动清理中间文件
echo "正在清理中间文件..."
rm -rf "$APPDIR"
rm -f "$DESKTOP_FILE"echo "清理完成..."ls -l simulation_client.AppImage

常用的Categories分类:

Utility; - 实用工具

Development; - 开发工具

System; - 系统工具

Network; - 网络应用

Graphics; - 图形应用

Office; - 办公软件


文章转载自:

http://vDPsx70N.mLffg.cn
http://D7TrXqwT.mLffg.cn
http://9d5ofvOp.mLffg.cn
http://r7PPahZF.mLffg.cn
http://ZQuTofWS.mLffg.cn
http://3OmHCWlb.mLffg.cn
http://lRAGxOqM.mLffg.cn
http://AZdK4BuD.mLffg.cn
http://XxBSVyko.mLffg.cn
http://UcijYGwk.mLffg.cn
http://noZPuMjM.mLffg.cn
http://56eoOucQ.mLffg.cn
http://UrcLZIhI.mLffg.cn
http://umjDXak2.mLffg.cn
http://K5KxLBaw.mLffg.cn
http://V2nuglT3.mLffg.cn
http://gCZiHSrt.mLffg.cn
http://Vf8iiFLi.mLffg.cn
http://oDW7dOmD.mLffg.cn
http://qr4YPIJa.mLffg.cn
http://3eWmV6zG.mLffg.cn
http://BQ4TPe5f.mLffg.cn
http://Lh1b5mDu.mLffg.cn
http://NnzWLYwY.mLffg.cn
http://dSc9jLXZ.mLffg.cn
http://BrZp5E4x.mLffg.cn
http://AX1dD4zC.mLffg.cn
http://GVYHxIMY.mLffg.cn
http://OvaltRTH.mLffg.cn
http://D38iPy21.mLffg.cn
http://www.dtcms.com/a/378475.html

相关文章:

  • Windows 10 22H2 64位 【原版+优化版、版本号:19045.6332】
  • 学习日记-CSS-day53-9.11
  • 线程的创建.销毁
  • pg卡死处理
  • 装饰器模式在Spring中的案例
  • 【Springboot】介绍启动类和启动过程
  • 服务器内部信息获取
  • 软考 系统架构设计师系列知识点之杂项集萃(143)
  • BFD原理与配置
  • spring源码分析————ListableBeanFactory
  • InfoSecWarrior CTF 2020: 02靶场渗透
  • wikijs如何增加全文搜索的功能,增加对应的索引(Win11环境+docker+数据库elasticSearch)
  • 企业远程访问方案选择:何时选内网穿透,何时需要反向代理?
  • go中的singleflight是如何实现的?
  • 计算机毕业设计 基于Hadoop的南昌房价数据分析系统的设计与实现 Python 大数据毕业设计 Hadoop毕业设计选题【附源码+文档报告+安装调试
  • 在Cursor里安装极其好用的Mysql Database Client 插件
  • C# .NET EFCore 性能优化
  • STM32--时间戳,BKB,RTC
  • Spring Cloud Consul
  • 基于K210和STM32的小区门禁系统(论文+源码)
  • 区块链与分布式账本:重构数字世界的信任基石
  • Java 编程语言详解:从基础到高级应用
  • 在centOS源码编译方式安装MySQL5.7
  • STM32H750 QSPI介绍及应用
  • 【Luogu】P9809 [SHOI2006] 作业 Homework (根号算法)
  • Linux Node.js 安装及环境配置详细教程
  • Node.js介绍与安装
  • Node.js 版本管理全指南:卸载 Node、安装 NVM、常用命令及问题解决
  • 如何在ONLYOFFICE中使用OCR工具:轻松识别图片和PDF中的文字
  • 专题:2025社交媒体营销与电商融合趋势报告:抖音、小红书、短剧、直播全拆解|附210+份报告PDF、数据仪表盘汇总下载