我已经使用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-
答案 0 :(得分:0)
尝试删除-kernel选项。确保一切保持不变:
qemu-system-ppc -nographic -M mpc8544ds -m 512 ~/CrossCompilation/u-boot.bin