编译linux3内核,与busybox,用qemu模拟运行

晚上稍微有点空,开始编译内核和busybox,我下的内核,原来是写的2.6,但下下来后看到了是3,算了,就先用着吧。

编译内核:

  1. make ARCH=arm versatile_defconfig 
  2. make ARCH=arm menuconfig  //将Kernel Featurer中的EABI选上,不知道做什么用的? 
  3. make ARCH=arm CROSS_COMPILE=arm-linux- all 
  4. 然后在arch/arm/boot中找到zImage,拷贝出来 

编译busybox,这个主要是用busybox建一个文件系统:

  1. make ARCH=arm CROSS_COMPILE=arm-linux- defconfig 
  2. make ARCH=arm CROSS_COMPILE=arm-linux- install 

制作文件系统:

  1. $cd busybox/_install 
  2. $mkdir proc sys dev etc etc/init.d 
  3. $vim etc/init.d/rcS 
  4. #!/bin/sh 
  5. mount -t proc none /proc 
  6. mount -t sysfs none /sys 
  7. /sbin/mdev -s 
  8. 然后将arm-linux-gcc中的armVFP/lib拷贝到_install中,这个是因为编译完的busybox是没有共享链接库的 
  9. $ cd _install 
  10. $ find . | cpio -o --format=newc > ../rootfs.img 
  11. $ cd .. 
  12. $ 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=ttyAMA0"
成功!

这里我必须加上-nographic和console=ttyAMA0否则通过telnet的方式,什么都不显示,不知是否是我的qemu有点问题。


阅读更多
版权声明:本文为博主原创文章,随便转载。 https://blog.csdn.net/luckpiky/article/details/7381350
文章标签: linux 测试
个人分类: linux
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

不良信息举报

编译linux3内核,与busybox,用qemu模拟运行

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭