拳皇女zero:rpm包的制作(SPEC文件的编辑)
来源:百度文库 编辑:偶看新闻 时间:2024/04/26 01:57:23
RPM制作
2.1 基本步骤
1) 取回软件的源代码和相关的补丁
2) 测试所需的补丁,以便于顺利的构建整个程序
3)编辑spec文件
4) 把文件放到正确的位置
5) 使用RPM构建rpm包
2.2 目录结构
/usr/src/redhat/BUILD 编译时的临时目录
/usr/src/redhat/RPMS 存放RPM包
/usr/src/redhat/SOURCES 存放源代码和补丁
/usr/src/redhat/SPECS 存放控制文件--spec文件
/usr/src/redhat/SRPMS 存放源代码包
2.3编辑spec文件
要想制作一个RPM格式的软件包,需要编写软件包描述文件。其标准命名格式为:软件名-版本号-释出号.spec,这个文件,详细描述了有关该软件包的诸多信息,如软件名,版本,类别,说明摘要,创建时要执行什么指令,安装时要执行什么操作,以及软件包所要包含的文件等等。有了这个文件,RPM就可以制作出相应的包裹文件来。
2.4打包过程
下面总结一下运行rpm -ba filename.spec 时,RPM 都做些什么:
1)读取并解析 filename.spec 文件
2)运行%prep 部分来将源代码解包到一个临时目录,并应用所有的补丁程序。
3)运行 %build 部分来编译代码。
4)运行%install 部分将代码安装到构建机器的目录中。
读取 %files 部分的文件列表,收集文件并创建二进制和源 RPM 文件。 源RPM 文件简单地捆绑了 spec 文件和构建软件包用到的所有源文件和补丁文件。如果您选择分发它,则其他人可以很容易地用它重建您的软件。二进制RPM 文件仅包含已编译的软件和如何安装的信息。
5)运行 %clean 部分来除去临时构建目录。
Spec文件的编辑
注释行
它以#号开头,起注解作用,可帮助用户理解所写的内容,但对软件包的生成不起任何作用。注释行可位于描述文件的任何位置。
文件头
文件头描述软件包的基本信息,它包含若干个域,其中有必选的域,也有可选的域。一个域占用一行,其描述格式为:
域名 : 域值
注意:域名不分大小写,并且域值不能为空。
文件头必选域:
共有6个。
1. Name :
此域定义软件名。
2.Version :
此域定义版本号。仅当软件较以前有较大改变时才增加版本号。注: 版本号中不能含减号(-)字符。
3.Release :
此域定义释出号。若软件较以前改变较小,则仅增加释出号,不改变版本号。注: 释出号中亦不能含减号(-)字符。
RPM利用上述的Name(软件名),Version(版本号),Release(释出号)及体系号来命名软件包,如本例输出的包裹文件名为sip-2.4.3-1.i386.rpm。
4. Summary :
此域定义软件包简介。
5. Group :
此域定义软件所属类别,本例的Developmet/Tools表示本软件属"开发/工具"类。
6. License :
此域定义软件适用的许可证或版权规则。该域也可用Copyright(版权)来定义,二者同意。许可证具体有:GPL(通用公共许可证,自由软件适用),BSD,MIT,PublicDomain(公共域),Distributable(贡献),Commercial(商业),Share(共享)等。
2.1 基本步骤
1) 取回软件的源代码和相关的补丁
2) 测试所需的补丁,以便于顺利的构建整个程序
3)编辑spec文件
4) 把文件放到正确的位置
5) 使用RPM构建rpm包
2.2 目录结构
/usr/src/redhat/BUILD 编译时的临时目录
/usr/src/redhat/RPMS 存放RPM包
/usr/src/redhat/SOURCES 存放源代码和补丁
/usr/src/redhat/SPECS 存放控制文件--spec文件
/usr/src/redhat/SRPMS 存放源代码包
2.3编辑spec文件
要想制作一个RPM格式的软件包,需要编写软件包描述文件。其标准命名格式为:软件名-版本号-释出号.spec,这个文件,详细描述了有关该软件包的诸多信息,如软件名,版本,类别,说明摘要,创建时要执行什么指令,安装时要执行什么操作,以及软件包所要包含的文件等等。有了这个文件,RPM就可以制作出相应的包裹文件来。
2.4打包过程
下面总结一下运行rpm -ba filename.spec 时,RPM 都做些什么:
1)读取并解析 filename.spec 文件
2)运行%prep 部分来将源代码解包到一个临时目录,并应用所有的补丁程序。
3)运行 %build 部分来编译代码。
4)运行%install 部分将代码安装到构建机器的目录中。
读取 %files 部分的文件列表,收集文件并创建二进制和源 RPM 文件。 源RPM 文件简单地捆绑了 spec 文件和构建软件包用到的所有源文件和补丁文件。如果您选择分发它,则其他人可以很容易地用它重建您的软件。二进制RPM 文件仅包含已编译的软件和如何安装的信息。
5)运行 %clean 部分来除去临时构建目录。
Spec文件的编辑
注释行
它以#号开头,起注解作用,可帮助用户理解所写的内容,但对软件包的生成不起任何作用。注释行可位于描述文件的任何位置。
文件头
文件头描述软件包的基本信息,它包含若干个域,其中有必选的域,也有可选的域。一个域占用一行,其描述格式为:
域名 : 域值
注意:域名不分大小写,并且域值不能为空。
文件头必选域:
共有6个。
1. Name :
此域定义软件名。
2.Version :
此域定义版本号。仅当软件较以前有较大改变时才增加版本号。注: 版本号中不能含减号(-)字符。
3.Release :
此域定义释出号。若软件较以前改变较小,则仅增加释出号,不改变版本号。注: 释出号中亦不能含减号(-)字符。
RPM利用上述的Name(软件名),Version(版本号),Release(释出号)及体系号来命名软件包,如本例输出的包裹文件名为sip-2.4.3-1.i386.rpm。
4. Summary :
此域定义软件包简介。
5. Group :
此域定义软件所属类别,本例的Developmet/Tools表示本软件属"开发/工具"类。
6. License :
此域定义软件适用的许可证或版权规则。该域也可用Copyright(版权)来定义,二者同意。许可证具体有:GPL(通用公共许可证,自由软件适用),BSD,MIT,PublicDomain(公共域),Distributable(贡献),Commercial(商业),Share(共享)等。
在LINUX中安装RPm文件包时,怎样指定安装的路径?
哪里有rpm这个命令(不是一般软件的rpm包)的源码?
求 linux 4.1 下的 wine 的rpm包
linux x wu-ftpd rpm包的安装
求linux wu-ftpd rpm包的下载地址
linux wu-ftpd rpm包的下载地址
Linux下可以安装realplayer10的rpm包
请问哪里可以下到imap的rpm包
谁有SWIN60的SPEC,?
请问SPEC的全称是什么,
硬盘转速的单位是 (rpm)?
空压机的速度 RPM
如何查询rpm软件包中包含的特定类型文件?
在红帽子linux企业4的安装光盘中有没有用于编译mysql源码包的编译器(rpm包的),要是有如何安装
请问RPM文件怎么打开?我刚下载的sis 86c201显卡驱动是RPM文件
哪里有for linux的glibc-2.3.4过更高版本的rpm包下载啊
如何进行电影文件的制作、编辑、格式转换
用什么软件编辑、制作swf格式的文件???
后缀为shp的文件如何制作编辑
linux下的rpm是什么意思
linux中,.rpm 与.rpm.asc的区别???
DV文件的编辑
编辑电影的文件
Photoshop制作的图形文件如何转换为cdr文件,转换后可编辑的!