RPM的创建

一.rpm包的基本步骤是:
1.依照rpmbuid规范创建一个目录结构
2.将源代码和附带文件放在目录中合适的位置
3.创建spec文件
4.编译rpm
rpmbuid规范的目录结构五个子目录:BUILD,RPMS,SOURCES,SPECS和SRPMS.。
BUILD目录用来编译源代码
RPMS目录用于存放最后生成的rpm包文件,他会使用不同的子目录来区分对应不同硬件平台的rpm包
SOURCES目录用于存放源代码
SPECS用来存放spec文件,用于构建一个rpm包的脚本文件
SRPMS目录存放着生成的源代码rpm包
spec文件
spec文件可以分为六个段:定义段,描述段,预处理段,安装段和打包段
1.定义段
首先是一个#的注释说明
然后使用_topdir,这个变量决定了rpm工作目录的最顶层目录.
接下来就是“标签:值”的内容,就是设定一个rpm包的基本信息,也属于定义段。重要的标签,Source标签规定了源代码的名称和来源;BuildRoot标签规定了rpm在什么地方找到编译好的二进制文件和其他需要安装的文件,并打包到.rpm文件中去.在这里的?代表如果为订制,则为空.
2.描述段
“%description” 下面的内容是对这个包的描述信息,这就是描述段了
3.预处理段
“%prep”代表预处理段的开始,这个段的作用就是整理代码,比如解压缩源代码包,给源代码打补丁等。rpm不要求源代码一定要放在SOURCES子目录,可以通过网络查找。
“%setup -q”预处理段的一个宏。他会根据“source”标签决定自己是什么。
%setup -b -a分别代表进入源代码目录之前处理和进入源代码目录之后出路
如果想阻止冲入解压主源代码,就要使用“%setup -T -a 1”这样就会解压source1中的代码,并不解压source0中的源代码
4.构建段
%build代表了构建段,也就是编译源代码,他的下面为configure和make过程,configrue传入一个参数,而make戴白哦二零编译选项
5.安装段
%install是安装段,
这个字段中包括DESTDIR,这个参数的等级高于configure的 --prefix,也就是他的父目录.
DESTDIR="$RPM_BUILD_ROOT" 这里的RPM_BUILD_ROOT就是BuildRoot中的目录
6.打包段
“%files”是打包段,它实际上就是一个要到爆的文件列表,“%defattr”宏描述了个文件的默认权限,一共四个参数,分别对应文件权限,所属用户,所属组和目录权限。文件权限和目录权限常用8禁止权限描述法如“755”如果使用“-”,则戴白哦采用当前文件的权限。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值