wget
http://vault.centos.org/7.5.1804/os/Source/SPackages/kernel-3.10.0-862.el7.src.rpm
rpm -i kernel-3.10.0-862.el7.src.rpm
/root/rpmbuild/SPECS
[root@localhost SPECS]# ls
kernel.spec
rpmbuild -bp kernel.spec
[root@localhost SPECS]# rpmbuild -bp kernel.spec
error: Failed build dependencies:
xmlto is needed by kernel-3.10.0-862.el7.centos.x86_64
asciidoc is needed by kernel-3.10.0-862.el7.centos.x86_64
hmaccalc is needed by kernel-3.10.0-862.el7.centos.x86_64
python-devel is needed by kernel-3.10.0-862.el7.centos.x86_64
newt-devel is needed by kernel-3.10.0-862.el7.centos.x86_64
perl(ExtUtils::Embed) is needed by kernel-3.10.0-862.el7.centos.x86_64
pesign >= 0.109-4 is needed by kernel-3.10.0-862.el7.centos.x86_64
elfutils-devel is needed by kernel-3.10.0-862.el7.centos.x86_64
binutils-devel is needed by kernel-3.10.0-862.el7.centos.x86_64
audit-libs-devel is needed by kernel-3.10.0-862.el7.centos.x86_64
java-devel is needed by kernel-3.10.0-862.el7.centos.x86_64
numactl-devel is needed by kernel-3.10.0-862.el7.centos.x86_64
pciutils-devel is needed by kernel-3.10.0-862.el7.centos.x86_64
ncurses-devel is needed by kernel-3.10.0-862.el7.centos.x86_64
其中perl用 yum install perl-ExtUtils-Embed.noarch
其它依赖库都是用名称直接安装了。
yum install xmlto asciidoc hmaccalc python-devel newt-devel perl pesign elfutils-devel binutils-devel audit-libs-devel java-devel numactl-devel pciutils-devel ncurses-devel -y
输出的文件:
/root/rpmbuild/SOURCES/linux-3.10.0-862.el7.tar.xz
tar -xf /root/rpmbuild/SOURCES/linux-3.10.0-862.el7.tar.xz
ln -s /root/linux-3.10.0-862.el7 /usr/src/linux
博客记录了内核 RPM 包构建过程,先使用 wget 和 rpm -i 命令下载安装内核源码包,执行 rpmbuild -bp 时出现依赖缺失错误,如 xmlto、asciidoc 等。通过 yum 安装相应依赖库,最后输出文件并进行解压和软链接操作。

1660





