为lazarus编译的程序生成deb安装包
2022/9/4 14:22:53
本文主要是介绍为lazarus编译的程序生成deb安装包,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
生成deb安装包可以手工打包和程序自动打包,手工打包主要是有建相关目录和编写control文件,程序打包自动生成相关目录及control文件。
以下手工打包的方法:
deb
-
DEB 是 Debian 软件包格式的文件扩展名,是 Unixar 的标准归档,将包文件信息以及包内容,经过 gzip 和 tar 打包而成。
-
deb 基于 tar 包,因此本身会记录文件的权限以及所有者/用户组。
-
deb 包组成部分:
-
数据包——包含实际的安装的程序数据,文件名为 data.tar.XXX;在安装过程中,改包里的数据会被直接解压到根目录(/),因此在打包之前需要根据文件所在位置设置好相应的文件目录树。如下:
-
安装信息及控制脚本包——包含deb的安装说明,标识,脚本等,文件名为 control.tar.gz;一般有5个文件:control,用于记录软件标识,版本号,平台,依赖信息等数据;preinst,在解包data.tar.gz前运行的脚本;postinst,在解包数据后运行的脚本;prerm,卸载时,在删除文件之前运行的脚本;postrm,在删除文件之后运行的脚本。如下:
package: package-name version: 1.0.0-2021.05.20 section: Software architecture: arm64 maintainer: lsm description: some package description
deb文件的二进制数据,包括文件头等信息,一般看不到,在某些软件中打开可以看到。
-
control字段信息说明
- package:程序名称,中间不能有空格
- version:软件版本
- description:程序说明
- section:软件类别,utils,net,mail,text,x11
- priority:软件对于系统的重要程度,required,standard,optional,extra等
- essential:是否是系统最基本的软件包,yes/no,若为yes,则不允许卸载(除非强制性卸载)
- architecture:软件所支持的平台架构,i386,arm64,amd64,m68k,sparc,alpha,powerpc等
- maintainer:维护者信息
- source:软件包的源代码名称
- depends:软件所依赖的其他软件包和库文件,若依赖多个软件包和库文件,采用逗号隔开
- pre-depends:软件安装前必须安装、配置依赖性的软件包和库文件,常用于必须的预运行脚本需求
- recommends:推荐安装的其他软件包和库文件
- suggests:建议安装的其他软件包和库文件
打包
dpkg -b MyProject MyProject-linux_arm64.deb
安装
dpkg -i MyProject-linux_arm64.deb
卸载
dpkg -P myproject
程序打包:
程序打包的安装包安装时会将程序的快捷方式添加到开始菜单,并将程序放/opt/安装包名称--这个文件夹。
只需将打包的应用及相关文件放指定目录,然后按以下步骤设置就可以自动生成deb。
这篇关于为lazarus编译的程序生成deb安装包的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-05-09“2024鸿蒙零基础快速实战-仿抖音App开发(ArkTS版)”实战课程已上线
- 2024-05-09聊聊如何通过arthas-tunnel-server来远程管理所有需要arthas监控的应用
- 2024-05-09log4j2这么配就对了
- 2024-05-09nginx修改Content-Type
- 2024-05-09Redis多数据源,看这篇就够了
- 2024-05-09Google Chrome驱动程序 124.0.6367.62(正式版本)去哪下载?
- 2024-05-09有没有大佬知道这种数据应该怎么抓取呀?
- 2024-05-09这种运行结果里的10.100000001,怎么能最快改成10.1?
- 2024-05-09企业src漏洞挖掘-有意思的命令执行
- 2024-05-08阿里云域名注册流程,分享给第一次购买域名的新手站长!