571
社区成员




一、安装开发环境
1.安装开发工具
sudo apt install build-essential
sudo apt install qemu # install QEMU
sudo apt install libncurses5-dev bison flex libssl-dev libelf-dev
2.下载内核源码
wget https://mirrors.edge.kernel.org/pub/linux/kernel/v5.x/linux-5.4.34.tar.xz
sudo apt install axel
axel -n 20 https://mirrors.edge.kernel.org/pub/linux/kernel/v5.x/linux-5.4.34.tar.xz
xz -d linux-5.4.34.tar.xz
tar -xvf linux-5.4.34.tar
cd linux-5.4.34
patch -p1 < ../mykernel-2.0_for_linux-5.4.34.patch
3.配置内核选项
make defconfig
make menuconfig
二、编译和运行内核
make -j$(nproc)
qemu-system-x86_64 -kernel arch/x86/boot/bzImage
三、制作根文件目录
#cd到busybox
cd busybox-1.35.0
make menuconfig
make menuconfig
#记得要编译成静态链接,不用动态链接库。
mkdir rootfs
cd rootfs
cp ../busybox-1.35.0/_install/* ./ -rf
mkdir dev proc sys home
sudo cp -a /dev/{null,console,tty,tty1,tty2,tty3,tty4} dev/
四、调试
python ./scripts/gen_compile_commands.py