调试环境
宿主机(Mac OS X)安装VirtualBox,创建2台虚拟机(CentOS-7-x86_64-Minimal-1804.iso),2台虚拟机通过串口相连
目标机:
开发机:
下载源码
wget http://vault.centos.org/7.5.1804/os/Source/SPackages/kernel-3.10.0-862.el7.src.rpm
rpm -ivh kernel-3.10.0-862.el7.src.rpm
cd rpmbuild/SPECS/
rpmbuild -bp kernel.spec
cd ../BUILD/kernel-3.10.0-862.el7/linux-3.10.0-862.el7.centos.x86_64/
编译和安装源码
cp configs/kernel-3.10.0-x86_64-debug.config .config
make menuconfig
去掉Build a relocatable kernel
去掉Set loadable kernel module data as NX and text as RO
make -j4
make modules_install
make install
vi /boot/grub2/grub.cfg
kgdboc=ttyS0,115200 kgdbwait
关机并复制1台虚拟机(1台作为目标机,1台作为开发机)
调试源码
重启虚拟机,目标机进第2个系统
开发机进第3个系统
cd rpmbuild/BUILD/kernel-3.10.0-862.el7/linux-3.10.0-862.el7.centos.x86_64/