从.src.rpm包中提取出完整的源码的方法

以提取 kernel-3.10.0-693.el7.src.rpm 版本的kernel代码为例:ide

1 什么是完整的源码

最初始的源码加上打了全部的patch后的源码,即最新的源码。ui

2 提取过程

2.1 从.src.rpm中提取rpm工程文件

cp kernel-3.10.0-693.el7.src.rpm /root/rpmbuild/SOURCES/
cd /root/rpmbuild/SOURCES/
//extract files from cpio
rpm2cpio kernel-3.10.0-693.el7.src.rpm | cpio -iv

2.2 根据spec文件提取源码

rpmbuild -bp kernel.spec

3 生成的源码所在的位置

//生成的源码位置为安装rpmbuild的BUILD目录下:
/root/rpmbuild/BUILD/kernel-3.10.0-693.el7/

4 若是是提取.rpm文件中的内容

那么就要加上-d参数,用来生成目录,不然报错。spa

rpm2cpio xxx | cpio -iv -d
相关文章
相关标签/搜索