linux 3カーネルをコンパイルしbusyboxとqemuシミュレーションで実行
夜は少し空いていて、カーネルとbusyboxのコンパイルを始めました.私の下のカーネルは、もともと2.6と書いてありましたが、降りてから見たのは3で、まあ、先に使っておきましょう.
カーネルのコンパイル:
busyboxをコンパイルします.これは主にbusyboxでファイルシステムを構築します.
ファイル作成システム:
テスト:
qemu-system-arm -M versatilepb -m 128M -kernel zImage -initrd rootfs2.img.gz-nographic-append"root=/dev/ram rdinit=/sbin/init console=ttyAMA 0"に成功!
ここに-nographicとconsole=ttyAMA 0を付けなければなりません.そうしないとtelnetで何も表示されません.私のqemuかどうかちょっと問題があります.
カーネルのコンパイル:
- make ARCH=arm versatile_defconfig
- make ARCH=arm menuconfig // Kernel Featurer EABI , ?
- make ARCH=arm CROSS_COMPILE=arm-linux- all
- arch/arm/boot zImage,
busyboxをコンパイルします.これは主にbusyboxでファイルシステムを構築します.
- make ARCH=arm CROSS_COMPILE=arm-linux- defconfig
- make ARCH=arm CROSS_COMPILE=arm-linux- install
ファイル作成システム:
- $cd busybox/_install
- $mkdir proc sys dev etc etc/init.d
- $vim etc/init.d/rcS
- #!/bin/sh
- mount -t proc none /proc
- mount -t sysfs none /sys
- /sbin/mdev -s
- arm-linux-gcc armVFP/lib _install , busybox
- $ cd _install
- $ find . | cpio -o --format=newc > ../rootfs.img
- $ cd ..
- $ gzip -c rootfs.img > rootfs.img.gz
テスト:
qemu-system-arm -M versatilepb -m 128M -kernel zImage -initrd rootfs2.img.gz-nographic-append"root=/dev/ram rdinit=/sbin/init console=ttyAMA 0"に成功!
ここに-nographicとconsole=ttyAMA 0を付けなければなりません.そうしないとtelnetで何も表示されません.私のqemuかどうかちょっと問題があります.