制作 linux .deb 安装包

文章目录

新增文件夹 packages

打包

packages

├── DEBIAN

│ └── control #详情看下方目录

│ └── postinst #详情看下方目录

│ └── postrm #详情看下方目录

├── opt

└── TestApp

├── TestApp.sh #运行脚本(使用脚本启动程序更自由)

└── TestApp.png #桌面图标(如果不需要可以不要)

└── TestApp.desktop #桌面快捷方式 (如果不需要可以不要)

control

安装包描述

perl 复制代码
Package: TestApp
Version: 1.0.0
Section: devel
Depends:
Priority: optional
Architecture: amd64
Maintainer: Ye hai
Homepage: https://www.baidu.com/
Installed-Size: 19MB
Provides: TestApp
Conflicts: TestApp
Replaces: TestApp
Description: 2023-08-28 18 11:00 AM

postinst

安装时会执行该脚本

-- 把快捷方式拷贝到开始菜单

-- 把快捷方式拷贝到桌面

perl 复制代码
#!/bin/sh
chmod 777 /opt/TestApp/TestApp.desktop
cp /opt/TestApp/TestApp.desktop /usr/share/applications/
#cp /opt/TestApp/TestApp.desktop ~/Desktop/

postrm

卸载时执行

-- 把开始菜单快捷方式文件删除

-- 把桌面快捷方式文件删除

perl 复制代码
 #!/bin/sh

if [ -f  "/usr/share/applications/TestApp.desktop" ]
then
    rm /usr/share/applications/TestApp.desktop
fi

if [ -f "~/Desktop/TestApp.desktop" ]
then
    rm ~/Desktop/TestApp.desktop
fi

TestApp.sh

perl 复制代码
#!/bin/sh

currentDir=`cd $(dirname $0); pwd -P`
cd "$currentDir"

#system environment variable
export LD_LIBRARY_PATH=$currentDir/lib:$LD_LIBRARY_PATH
export QT_PLUGIN_PATH=$currentDir/plugins
#export QT_DEBUG_PLUGINS=1
sh -c `$currentDir/TestApp`
exit 0

TestApp.desktop

perl 复制代码
[Desktop Entry]
Encoding=UTF-8
Version=1.0
Type=Application
Terminal=true
Exec=/opt/TestApp/TestApp.sh log
Name=TestApp
Icon=/opt/TestApp/robot.png

生成安装包

cd 到 packages 上一层目录执行下面命令行

perl 复制代码
dpkg -b packages TestApp.deb

安装.deb

perl 复制代码
sudo dpkg -i TestApp.deb

卸载

perl 复制代码
sudo dpkg -r TestApp

Qt 发布应用程序

相关推荐
Howrun7779 小时前
关于Linux服务器的协作问题
linux·运维·服务器
小白同学_C10 小时前
Lab3-page tables && MIT6.1810操作系统工程【持续更新】
linux·c/c++·操作系统os
十年磨一剑~11 小时前
Linux程序接收到sigpipe信号崩溃处理
linux
geshifei11 小时前
Sched ext回调3——select_cpu(linux 6.15.7)
linux·ebpf
代码游侠11 小时前
C语言核心概念复习——网络协议与TCP/IP
linux·运维·服务器·网络·算法
你真是饿了11 小时前
6.库制作与原理
linux·服务器
Zach_yuan13 小时前
深入浅出 JSONCpp
linux·服务器·网络·c++
北京迅为13 小时前
《【北京迅为】itop-3568开发板NPU使用手册》- 第 7章 使用RKNN-Toolkit-lite2
linux·人工智能·嵌入式·npu
Dragon~Snow14 小时前
Linux Centos9 安装 Elasticsearch
linux·elasticsearch·jenkins
熊延14 小时前
麒麟V10系统安装部署elasticsearch
linux·运维·服务器·elasticsearch·搜索引擎·全文检索