树莓派程序安装包打包
这次来介绍下如何在树莓派中将已经编译好的程序打包成deb,以方便量产时的程序部署。
安装包(deb)目录结构
|----打包临时目录
|----DEBIAN
|-------control 【安装包信息】
|-------postinst 【解包后且在安装过程中运行的脚本】
|-------postrm 【解包后且在卸载过程中运行的脚本】
|-------preinst 【解包前且在安装过程中运行的脚本】
|-------prerm 【解包前且在卸载过程中运行的脚本】
|-------copyright 【版权信息】
|-------changlog 【修订记录】
|-------conffiles 【在软件升级时,是否保留配置文件】
|----etc
|----usr
|----opt
|----tmp
|----boot
DEBIAN
这个目录中主要存放的时安装控制及安装包信息。
control文件中是安装包的名称、版本、依赖等信息,这个文件是必须要有的。
postinst、postrm、preinst、prerm四个文件分别是安装或卸载过程控制文件,但不是必须要有,这个根据自己的软件安装情况进行编写。
其它文件也是非必须,根据实际情况进行添加。
其它目录
进行打包时我们可以将打包数据的临时目录视为系统的根目录,软件需要安装在什么位置,是否需要在桌面、自启动中增加启动脚本可以根据软件情况自己处理。
比如我将软件安装到/opt
目录下,则我们就把软件相关的二进制文件复制到/opt/软件名称/
目录下就行了。
比如我们需要在桌面放置一个快捷启动,则我们就在/home/pi/Desktop
目录下创建一个软件名称.destop
的桌面启动项
打包
将软件数据创建好后,我就可以在控制台中进入打包数据的临时目录,运行如下指令进行打包
dpkg -b . mydeb-1.deb
dgkg: 树莓派系统中的软件包管理器
-b:将指定目录压缩并生成软件安装包,使用这个选项时,后面需要指定两个参数,第一个为源数据目录,.
表示当前工作目录,第二个参数是生成的安装包的存放目录。