qemu无法启动u-boot uImage二进制文件



我使用buildroot构建了一个与qemu兼容的Linux内核和根文件系统。我正在为MPC8544DS机器进行仿真,并使用qemu_ppc_mpc8544ds_defconfig生成这些组件。我成功地构建了内核和根文件系统。并且能够在qemu下运行它。

然而,当我尝试运行uboot而不是Linux内核(以及相关的rootfs)时,它失败了。以下是我调用qemu启动u-boot的方法:

qemu-system-ppc -nographic -M mpc8544ds -m 512 -kernel ~/CrossCompilation/u-boot.bin,它像这样失败:

Wrong image type 52, expected 2 qemu: could not load kernel '~/CrossCompilation/u-boot.bin'

我不明白还有什么问题。我在互联网上查看了各种博客文章,几乎所有的博客都使用uboot.bin作为内核(而不是srec和其他格式)

有人能解释一下各种图像类型的数字吗?哪些数字适合哪里?

更新:这是我编译u-boot 的方式

cd to u-boot dir
make distclean
make mrproper
make ARCH=powerpc CROSS_COMPILE=~/CrossCompilation/buildroot-2014.08/output/host/usr/bin/powerpc-buildroot-linux-gnuspe- MPC8544DS_defconfig
make ARCH=powerpc CROSS_COMPILE=~/CrossCompilation/buildroot-2014.08/output/host/usr/bin/powerpc-buildroot-linux-gnuspe-

尝试删除-kernel选项。确保一切保持原样:

qemu-system-ppc -nographic -M mpc8544ds -m 512  ~/CrossCompilation/u-boot.bin

相关内容

  • 没有找到相关文章

最新更新