linux下制作deb包

linux下制作deb包

  • 1.在拥有一个初始的deb包的情况下

    1. 第一步将初始deb进行解压:dpkg -x *.deb path (path是解压路径)
    2. 第二步解压出包的控制信息:dpkg -e *.deb path/DEBIAN
    3. 第三步替换相关文件
    4. 第四步打包成deb安装包:dpkg-deb -b path

  • 2.制作deb包

    1. 1) deb包通常分为两个部分:

       控制信息(DEBIAN目录)
       安装内容(模拟root目录)

    1. 2) 通过已有的deb查看其中内容

      释放安装内容到 path目录中:dpkg -x *.deb path
      释放控制信息到 path 目录中:dpkg -e *.deb path

    1. 3) DEBIAN 目录下内容说明:

      contol 文件:配置信息(用了记录软件标识,版本号,平台,依赖信息等数据)

      Package: xxx
      Name: xxx
      Version: 1.0
      Architecture: i386 对应的平台
      Depends: 依赖
      Description: 描述
      Maintainer: 维护人
      Author: yuaningv

      conffiles 文件:
      config 文件:
      md5sums 文件:
      postinst 文件:在解包数据后运行的脚本
      postrm 文件:在删除文件之后运行的脚本
      templates 文件:
      prerm 文件:卸载时,在删除文件之前运行的脚本
      preinst 文件:在解包data.tar.gz前运行的脚本
      备注:
      - inst是install(安装)的缩写
      - pre是表示XX之前的前缀
      - post是表示XX之后的前缀
      - rm是remove(移除)的缩写

    1. 4) dh-make checkinstall 打包工具
      apt-get install dh-make checkinstall
Linux系统中创建deb软件是一个涉及多个步骤的过程,主要括编写程序、编译可执行文件、创建必要的目录结构和控制文件、以及使用dpkg工具进行打[^2]。以下是详细的步骤说明: ### 准备工作 1. **编写程序**:首先需要有一个可以正常运行的程序。这个程序可以是用任何语言编写的,只要能够编译或解释执行即可。 2. **编译可执行文件**:如果程序是用C/C++等需要编译的语言编写的,那么需要先将其编译成可执行文件。确保程序无误,如有错误,请自行更正。 ### 创建目录结构 3. **创建项目文件夹**:创建一个用于存放所有deb所需文件的文件夹,例如`hellold`。在这个文件夹中,需要创建几个特定的子文件夹和文件: - `DEBIAN`:这是必须存在的一个目录,deb的控制信息就存放在这里。 - `usr/local/bin/`:通常用来存放程序的可执行文件。 4. **编写control文件**:在`DEBIAN`目录下创建一个名为`control`的文件,该文件记录了deb安装的基本信息,括但不限于软件名称(Package)、版本号(Version)、分类(Section)、优先级(Priority)、架构(Architecture)、维护者(Maintainer)和描述(Description)。需要注意的是,每个字段的首字母必须大写,且各字段之间不能有空行,否则在封时会提示错误。 ### 打与测试 5. **使用dpkg命令编**:打开终端,切换到含你的项目文件夹的目录,然后运行`dpkg -b hellold/ hellold_1.0_i386.deb`命令来生成deb软件。这里的`hellold_1.0_i386.deb`是你将要创建的deb文件的名字。 6. **安装自己编好的deb**:使用`sudo dpkg -i hellold_1.0_i386.deb`命令来安装你刚刚创建的deb。 7. **检查是否安装成功**:可以通过运行`dpkg -l |grep hello`来查看软件是否已经成功安装。如果看到两个“ii”字母,表示安装成功。 8. **程序使用测试**:尝试运行你的程序以确保它按预期工作。例如,如果你的应用程序名为`hello`,则可以在终端输入`hello`来启动它。 9. **卸载程序**:当你不再需要这个软件时,可以使用`dpkg -P hellold`命令来完全卸载它,括其配置文件;或者使用`dpkg -r hellold`仅卸载程序本身[^2]。 ```bash # 示例代码块 # 编译可执行文件 gcc -o hello hello.c # 创建项目文件夹 mkdir -p hellold/usr/local/bin/ # 将可执行文件复制到指定位置 cp hello hellold/usr/local/bin/ # 创建DEBIAN目录及control文件 mkdir -p hellold/DEBIAN echo "Package: hellold Version: 1.0 Section: base Priority: optional Architecture: i386 Maintainer: Your Name <your.email@example.com> Description: A simple example package. This is a longer description of the package." > hellold/DEBIAN/control # 使用dpkg命令编 dpkg -b hellold/ hellold_1.0_i386.deb # 安装自己编好的deb sudo dpkg -i hellold_1.0_i386.deb # 检查是否安装成功 dpkg -l |grep hello # 程序使用测试 hello # 卸载程序 sudo dpkg -P hellold ``` 通过以上步骤,你可以顺利地在Linux系统中创建一个deb软件,并对其进行安装、测试和卸载操作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值