qemu-system-arm -M versatilepb -m 128M -kernel /home/arit/QEMU/linux-3.8.4/arch/arm/boot/uImage -append "console=tty1"
我只能看到黑屏,我也尝试了下面的线程中建议的内容
但它仍然没有用.
以下是我运行以编译内核源代码的make命令的输出
make ARCH = arm CROSS_COMPILE = arm-none-linux-gnueabi- uImage -s
Image Name: Linux-3.8.4 Created: Tue Dec 24 12:49:07 2013 Image Type: ARM Linux Kernel Image (uncompressed) Data Size: 4406472 Bytes = 4303.20 kB = 4.20 MB Load Address: fffffff2 Entry Point: fffffff2
加载和输入点是否正常?
解决方法
Image Name: Linux-3.9.0 Created: Thu Dec 26 09:50:57 2013 Image Type: ARM Linux Kernel Image (uncompressed) Data Size: 1908056 Bytes = 1863.34 kB = 1.82 MB Load Address: 00008000 Entry Point: 00008000
此外,如果你尝试使用你的命令,内核将在没有rootfs的情况下出现恐慌. initrd参数丢失.在构建内核时,您可能还缺少一些配置.
请尝试以下步骤:
1)使ARCH = arm distclean
2)制作ARCH = arm versatile_defconfig
3)制作ARCH = arm menuconfig
在这里你需要启用以下功能.
内核特征—>
[*]使用ARM EABI编译内核. (启用此功能).
4)使ARCH = arm CROSS_COMPILE = arm-none-linux-gnueabi- uImage
5)qemu-system-arm -M versatilepb -m 128M -kernel arch / arm / boot / uImage -append“console = tty1”
在这里你会得到控制台说内核恐慌.
避免这传递你的rootfs参数.
我猜你是从busybox构建的rootfs,如果是这样尝试下面的命令来完全启动系统
6)qemu-system-arm -M versatilepb -m 128M -kernel arch / arm / boot / uImage -initrd rootfs.img -append“root = / dev / ram mem = 128M rdinit = / sbin / init”-serial stdio.