spec是什么类型的文件?

spec是什么类型的文件?,第1张

投机说明书 

(尤指地产开发中) 投机性建房的。

spec文件解读:

一、编写spec脚本

由前面的日志了解到,生成rpm除了源码外,最重要的就是懂得编写.spec脚本。rpm建包的原理其实并不复杂,可以理解为按照标准的格中岁带式整理一些信息,包括:软件基础信息,以及安装、卸载前后执行的脚本,对源码包解压、打补丁、编译,安装路径和文件等。

实际过程中,最关键的地方,是要清楚虚拟路径的位置,以及宏的定义。

二、关键字

spec脚本包括很多关键字,主要有:

引用

Name: 软件包的名称,后面可使用%{name}的方式引用

Summary: 软件包的内容概要

Version: 软件的实际版卖芦本号,例如:1.0.1等,后面可使用%{version}引用

Release: 发布序列号,例如:1linuxing等,标明第几次打包,后面可使用%{release}引用

Group: 软件分组,建议使用标准分组

License: 软件授权方式,通常就是GPL

Source: 源代码包,可以带多个用Source1、Source2等源,后面也可以用%{source1}、%{source2}引用

BuildRoot: 这个是安装或编译时使用的“虚拟目录”,考虑到多用户的环境,一般定义为:

%{_tmppath}/%{name}-%{version}-%{release}-root

%{_tmppath}/%{name}-%{version}-%{release}-buildroot-%(%{__id_u} -n}

该参数雀仿非常重要,因为在生成rpm的过程中,执行make install时就会把软件安装到上述的路径中,在打包的时候,同样依赖“虚拟目录”为“根目录”进行 *** 作。

Spec文件用于告诉rpmbuild如何构建RPM或者SRPM包 RPM,SRPM区别参见鸟哥悔高的Linux私房菜

。Spec文件包含preamble和body两部分,preamble部分主要备滑包含一些包的元数据,body部分主要用于打包,安装等。

Preamble参数说明:

构仿前腊建后的包名为N-V-R(NAME-VERSION-RELEASE)

Body参数说明:

BuildRoots

buildroot相当于系统“/”目录,里面的文件结构,最后在rpm安装的时候会按照buildroot目录下的文件层级结构安装到”/“目录下。

参考文献

rpm packaging guide

rpm doc

mspaint,control。spec文件是配置规范文件,是RPM软件包编译过程的核心,配合rpmbuild命令使用,mspaint,control不是针对spec文件的 *** 作命令。洞睁spec文件说明了软件包如纳芹岁何被配置、打那些补丁、安装哪些文件、安装到哪里、安装过程需要哪些系首枯统级别活动。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/12299078.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-24
下一篇 2023-05-24

发表评论

登录后才能评论

评论列表(0条)

保存