首先从centos官网下载kernel代码,我选择的是7.3.1611,其它版本也是一样的操作。
http://vault.centos.org/7.3.1611/os/Source/SPackages/kernel-3.10.0-514.el7.src.rpm
操作系统版本
# cat /etc/redhat-release
CentOS Linux release 7.3.1611 (Core)
#
执行rpmbuild的时候,如果有依赖包没有找到,会有提示。
# rpmbuild --rebuild kernel-3.10.0-514.el7.src.rpm
#
解决依赖问题,安装开发工具链:
# yum group install "Development tools"
# yum install binutils-devel
安装依赖包:
# yum install xmlto
# yum install python-devel newt-devel elfutils-devel audit-libs-devel pciutils-devel
# yum install bc asciidoc hmaccalc pesign perl numactl-devel
#
# sudo yum install 'perl(ExtUtils::Embed)'
#
再次build:
# rpmbuild --rebuild kernel-3.10.0-123.el7.src.rpm
Installing kernel-3.10.0-123.el7.src.rpm
......
+ cd /root/rpmbuild/BUILD
+ rm -rf kernel-3.10.0-123.el7
+ exit 0
#
http://vault.centos.org/7.3.1611/os/Source/SPackages/kernel-3.10.0-514.el7.src.rpm
操作系统版本
# cat /etc/redhat-release
CentOS Linux release 7.3.1611 (Core)
#
执行rpmbuild的时候,如果有依赖包没有找到,会有提示。
# rpmbuild --rebuild kernel-3.10.0-514.el7.src.rpm
#
解决依赖问题,安装开发工具链:
# yum group install "Development tools"
# yum install binutils-devel
安装依赖包:
# yum install xmlto
# yum install python-devel newt-devel elfutils-devel audit-libs-devel pciutils-devel
# yum install bc asciidoc hmaccalc pesign perl numactl-devel
#
# sudo yum install 'perl(ExtUtils::Embed)'
#
再次build:
# rpmbuild --rebuild kernel-3.10.0-123.el7.src.rpm
Installing kernel-3.10.0-123.el7.src.rpm
......
+ cd /root/rpmbuild/BUILD
+ rm -rf kernel-3.10.0-123.el7
+ exit 0
#
rpmbuild会执行比较长的时间,看到exit 0之后说明build成功了。如果是以root用户执行rpmbuild,Linux kernel源代码默认安装在/root/rpmbuild/目录下。