.spec文件笔记
来源:互联网 发布:windows更新后c盘变小 编辑:程序博客网 时间:2024/06/05 10:15
头文件:
(1) Summary: 用一句话概括该软件;
(2) Name: 软件名,最终RPM 软件是用该名字,版本号,释出号,体系号来命名软件的;
(3) Version: 软件包版本号, 当软件相对之前有较大改动才会增加版本号;
(4) Release: 软件包释出号, 当对软件作出补丁时,释出号加1;
(5) Vendor: 软件开发者的名字;
(6) CopyRight: 软件包采用的版权规则,一般都写GPL(自由软件),BSD,MIT,Public Domain(公共域),commercial(商业),shared(公共);
(7) Group: 软件分组,软件包所属的类型;
(8) License: 软件授权方式,一般是GPL
(9) Source: 源代码包
(10) Patch: 补丁源码;
(11) BulidRoot: 安装和编译时使用的虚拟目录,一般写为 %{_tmppath}/%{name}-%{version}-root
或者 %{_tmppath}/%{name}-%{version}-%{release}-root
该参数非常重要,后面可使用$RPM_BUILD_ROOT 方式引用。
因为在生成rpm的过程中,执行make install时就会把软件安装到上述的路径中,在打包的时候,同样依赖“虚拟目录”为“根目录”进行操作。
(12) URL: 软件主页;
(13) Requires: 该rpm所依赖的软件包的名称,可以用>= , <=表示大于,小于某一个特定版本;
预处理:%prep
预处理阶段,写一些预处理脚本执行来解开源程序包的命令,为下一步的编译安装做准备;
%prep 与%build,%install 阶段一样, 除了可以执行RPM 定义的一些宏命令,还可以执行shell命令,可以都多行;
%preun: rpm 卸载前执行的脚本;一般写 %setup -q 即可;
%build 开始编译源码构建包,相当于 configure 与 make;
%install 把软件安装到虚拟的根目录中;为以下的%files文件段服务,这里写的是绝对路径
%post rpm安装后执行的脚本;
%files:
用于定义构成软件包的文件列表,这些文件将放入rpm 中分成三类;分为三类:说明档类(doc),配置文件(config),以及可执行程序。
(1) Summary: 用一句话概括该软件;
(2) Name: 软件名,最终RPM 软件是用该名字,版本号,释出号,体系号来命名软件的;
(3) Version: 软件包版本号, 当软件相对之前有较大改动才会增加版本号;
(4) Release: 软件包释出号, 当对软件作出补丁时,释出号加1;
(5) Vendor: 软件开发者的名字;
(6) CopyRight: 软件包采用的版权规则,一般都写GPL(自由软件),BSD,MIT,Public Domain(公共域),commercial(商业),shared(公共);
(7) Group: 软件分组,软件包所属的类型;
(8) License: 软件授权方式,一般是GPL
(9) Source: 源代码包
(10) Patch: 补丁源码;
(11) BulidRoot: 安装和编译时使用的虚拟目录,一般写为 %{_tmppath}/%{name}-%{version}-root
或者 %{_tmppath}/%{name}-%{version}-%{release}-root
该参数非常重要,后面可使用$RPM_BUILD_ROOT 方式引用。
因为在生成rpm的过程中,执行make install时就会把软件安装到上述的路径中,在打包的时候,同样依赖“虚拟目录”为“根目录”进行操作。
(12) URL: 软件主页;
(13) Requires: 该rpm所依赖的软件包的名称,可以用>= , <=表示大于,小于某一个特定版本;
预处理:%prep
预处理阶段,写一些预处理脚本执行来解开源程序包的命令,为下一步的编译安装做准备;
%prep 与%build,%install 阶段一样, 除了可以执行RPM 定义的一些宏命令,还可以执行shell命令,可以都多行;
%preun: rpm 卸载前执行的脚本;一般写 %setup -q 即可;
%build 开始编译源码构建包,相当于 configure 与 make;
%install 把软件安装到虚拟的根目录中;为以下的%files文件段服务,这里写的是绝对路径
%post rpm安装后执行的脚本;
%files:
用于定义构成软件包的文件列表,这些文件将放入rpm 中分成三类;分为三类:说明档类(doc),配置文件(config),以及可执行程序。
还可以定义文件存取权限,拥有者以及组别。这会在虚拟的根目录下执行,不能写绝对路径,应该用宏或者变量写其相对路径。
rpm 常用命令:
rpm -ivh XXX.lp19.x86_64.rpm --> 安装
rpm -i xxx.lp19.src.rpm
rpmbuild -ba xxx.spec --> 查看源码
rpm -e xxx --nodeps --> 仅卸载该软件,不卸载依赖软件;
rpm --showrc --> 查看.spec 实现代码;
rpm --eval "%{_bindir}" --> 查看实际对应地址;
fmoonstar 更新至 2013/04/15
- .spec文件笔记
- spec文件
- SPEC文件模板
- spec文件详解
- spec文件详解
- spec文件介绍
- rpm打包spec文件
- SPEC 文件编写
- SPEC 文件详解
- spec文件详解
- spec文件详解
- spec文件问题定位
- spec文件详解
- lustre spec示例文件
- SPEC文件详解
- rpm spec文件编写
- PCI Spec阅读笔记:第一章
- RPM包rpmbuild SPEC文件
- C++ standard exceptions
- wdos—linux服务器管理系统
- java内存管理
- struts2配置中Action的name和package的name和namespace的用法,以及extends属性
- Hough变换原理
- .spec文件笔记
- 揭秘程序员大脑编程的七大“误区”
- 第七周项目四——复数模板类
- 关于vmlinux,vmlinuz,bzImage,zImage的区别和联系
- java final 关键字
- Eclipse CC++开发环境搭建
- TClassList详解
- Linux 内核编译 添加系统调用
- VC中使用Socket网络文件传输结构