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://www.pswp.cn/news/922009.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/922009.shtml
英文地址,請注明出處:http://en.pswp.cn/news/922009.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

華為昇騰CANN開發實戰:算子自定義與模型壓縮技術指南

點擊 “AladdinEdu&#xff0c;同學們用得起的【H卡】算力平臺”&#xff0c;注冊即送-H卡級別算力&#xff0c;80G大顯存&#xff0c;按量計費&#xff0c;靈活彈性&#xff0c;頂級配置&#xff0c;學生更享專屬優惠。 摘要 隨著人工智能技術的飛速發展&#xff0c;越來越多…

Vue3源碼reactivity響應式篇之reactive響應式對象的track與trigger

概覽 在BaseReactiveHandler類的get方法中&#xff0c;有如下代碼塊if (!isReadonly2){track(target, "get", key);}&#xff0c;這表示通過reactive、shallowReactive創建的響應式對象&#xff0c;非只讀的&#xff0c;當讀取代理對象proxyTarget的某個屬性key時&am…

VRRP 多節點工作原理

VRRP 多節點工作原理 基本概念 VRRP 的設計初衷是給一組節點提供一個 虛擬路由器&#xff0c;對外只表現出一個 VIP。協議規定&#xff1a;同一個 VRRP 實例 下始終只有 一個 Master 持有 VIP&#xff0c;其它全部是 Backup。 Master → 持有 VIP&#xff0c;負責轉發流量到Mas…

Gradio全解11——Streaming:流式傳輸的視頻應用(9)——使用FastRTC+Gemini創建沉浸式音頻+視頻的藝術評論家

Gradio全解11——Streaming&#xff1a;流式傳輸的視頻應用&#xff08;9&#xff09;——使用FastRTCGemini創建沉浸式音頻視頻的藝術評論家11.9 使用FastRTCGemini創建實時沉浸式音頻視頻的藝術評論家11.9.1 準備工作及音頻圖像編碼器1. 項目說明及準備工作2. 音頻和圖像編碼…

Django入門筆記

Python知識點&#xff1a;函數、面向對象。前端開發&#xff1a;HTML、CSS、JavaScript、jQuery、BootStrap。MySQL數據庫。Python的Web框架&#xff1a;Flask&#xff0c;自身短小精悍 第三方組件。Django&#xff0c;內部已集成了很多組件 第三方組件。【主要】1.安裝djang…

當Claude Code失靈,Qwen Code能否成為你的救星?

當Claude Code失靈&#xff0c;Qwen Code能否成為你的救星&#xff1f; 一、開頭&#xff1a;點明困境&#xff0c;引出主角 作為一個大模型博主&#xff0c;日常工作中我經常會使用各種 AI 工具來提高效率&#xff0c;Claude Code 就是我之前非常依賴的一款代碼生成助手 。它…

Go語言快速入門教程(JAVA轉go)——1 概述

優勢 第一個理由&#xff1a;對初學者足夠友善&#xff0c;能夠快速上手。 業界都公認&#xff1a;Go 是一種非常簡單的語言。Go 的設計者們在發布 Go 1.0 版本和兼容性規范后&#xff0c;似乎就把主要精力放在精心打磨 Go 的實現、改進語言周邊工具鏈&#xff0c;還有提升 Go …

【Rust多進程】征服CPU的藝術:Rust多進程實戰指南

?? 歡迎大家來到景天科技苑?? &#x1f388;&#x1f388; 養成好習慣&#xff0c;先贊后看哦~&#x1f388;&#x1f388; &#x1f3c6; 作者簡介&#xff1a;景天科技苑 &#x1f3c6;《頭銜》&#xff1a;大廠架構師&#xff0c;華為云開發者社區專家博主&#xff0c;…

OpenCV 高階實戰:圖像直方圖與掩碼圖像深度解析

目錄 一、圖像直方圖&#xff1a;讀懂圖像的 “像素分布報告” 1. 什么是圖像直方圖&#xff1f; 2. 圖像直方圖的核心作用 &#xff08;1&#xff09;分析亮度分布 &#xff08;2&#xff09;判斷對比度高低 &#xff08;3&#xff09;輔助圖像增強與閾值分割 &#xf…

基于stm32的家庭安全監測系統設計

若該文為原創文章&#xff0c;轉載請注明原文出處。一、引言&#xff08;一&#xff09;研究背景及意義背景&#xff1a;隨著智能家居概念的普及&#xff0c;人們對家庭安全、舒適度和節能提出了更高要求。傳統安防系統功能單一、各系統獨立&#xff0c;缺乏聯動和遠程管理能力…

Oracle體系結構-控制文件(Control Files)

一、 原理 (Principle) 核心定位&#xff1a; 控制文件是一個小型的二進制文件&#xff0c;由 Oracle 實例在啟動和操作過程中持續讀寫。它是數據庫物理結構的權威記錄。數據庫無法啟動或正常操作時&#xff0c;如果無法訪問控制文件&#xff0c;實例將無法識別數據文件和重做日…

路由 下一跳 網關 兩個不同網段的ip如何通過路由器互通

路由 (Routing)核心思想&#xff1a;路徑選擇是什么&#xff1f; 路由是指數據包從源主機傳輸到目標主機的整個過程。這個過程就像寄快遞&#xff1a;你需要決定包裹經過哪些中轉站才能最終到達收件人手里。做什么&#xff1f; 網絡中的設備&#xff08;主要是路由器&#xff0…

HiDDeN論文解讀與代碼實現

論文&#xff1a;HiDDeN: Hiding Data With Deep Networks 作者&#xff1a;Jiren Zhu, Russell Kaplan, Justin Johnson, Li Fei-Fei一、研究背景 在圖像信息隱藏領域&#xff0c;通常有兩類典型的應用場景&#xff1a;隱寫 (Steganography) 目標&#xff1a;實現秘密通信。要…

實驗室服務器配置|實驗室多人共享GPU|通過Docker實現Linux系統多用戶隔離與安全防控

利用實驗室服務器跑實驗的時候&#xff0c;通常就是兩種方案&#xff0c;一個是向日葵遠程桌面進行操作&#xff0c;一個是通過ssh進行連接&#xff0c;用ssh的話&#xff0c;一般服務器都在內網&#xff08;例如校園網&#xff09;&#xff0c;是無法在公網&#xff08;不在校…

2019考研數學(二)真題

一、選擇題 (1) (2) (3) (4) 遺漏點&#xff1a;由通解知特解&#xff0c;特解代入微分方程 (5) ★記住這個題&#xff0c;用的泰勒展開(6) (7) 遺忘點&#xff1a; ★伴隨矩陣的秩與原矩陣秩的關系&#xff1a; (8) 錯誤點&#xff1a;粗心 二、填空題 (9) 易混淆點&#xff…

10 分鐘上手 ECharts:從“能跑”到“生產級”的完整踩坑之旅

10 分鐘上手 ECharts&#xff1a;從“能跑”到“生產級”的完整踩坑筆記 如果你也曾 復制了官方 Demo 卻不知道怎么拆、窗口一拉伸圖表就變形、切換標簽頁后內存暴漲——這篇博客就是為你寫的。 我會用 6 個遞進版本 的源碼&#xff0c;帶你把一張 最簡柱狀圖 逐步進化成 可銷毀…

二級緩存在實際項目中的應用

二級緩存在項目中的應用 目錄 1. 二級緩存簡介2. 應用場景3. 重難點分析4. 結合SpringBoot使用5. 最佳實踐與案例6. 總結 1. 二級緩存簡介 1.1 什么是二級緩存 二級緩存&#xff08;Second-Level Cache&#xff09; 是Hibernate框架中的一個重要特性&#xff0c;它提供了應…

深入淺出CRC校驗:從數學原理到單周期硬件實現 (2)CRC數學多項式基礎

數學的優雅&#xff1a;剖開CRC的多項式除法核心看似復雜的CRC校驗&#xff0c;其核心建立在優雅的數學基礎之上。本文將為您揭開CRC算法的數學面紗&#xff0c;讓您真正理解多項式除法的精妙之處。模2運算&#xff1a;CRC世界的特殊算術 CRC計算建立在一種特殊的代數系統上——…

軟考初級有沒有必要考?

對正在學習相關專業的學生或者是行業新人&#xff0c;這篇文章從軟考初級的含義、適合哪些人考、考試難度等方面解答&#xff0c;幫助你判斷要不要報考。一、軟考初級是什么&#xff1f; 軟考初級是軟考體系里面的基礎級別&#xff0c;主要面向在校大學生或是IT行業新人&#x…

11 Prompt 工程進階:Few-shot 與 Chain-of-Thought

11 Prompt 工程進階&#xff1a;Few-shot 與 Chain-of-Thought 前10節總結 & 后10節展望 在前 10 節&#xff0c;我們已經完成了 AI 產品經理的入門階段&#xff1a; 1–3&#xff1a;理解了大模型的基本概念、Token、Prompt 基礎&#xff1b;4–5&#xff1a;體驗了本地部…