Gcc 在Mac OS X'中引导u-boot;s qemu

Gcc 在Mac OS X'中引导u-boot;s qemu,gcc,arm,qemu,u-boot,Gcc,Arm,Qemu,U Boot,我正在尝试构建u-boot,并在MacOSX上的qemu中运行它。 我找到了这个网站,并按照说明进行了操作: 对于Mac OS X上的交叉编译,我可以构建以下工具- 对于u-boot,我尝试了导致核心转储的最新版本(2014),以及一些未编译的早期版本(2010),因此我使用了2013/10版本()来获取uboot.bin 但是,当我使用qemu系统arm-M versatilepb-M 128M-nographic-kernel u-boot.bin运行二进制文件时,没有崩溃,但我从屏幕上看

我正在尝试构建u-boot,并在MacOSX上的qemu中运行它。 我找到了这个网站,并按照说明进行了操作:

对于Mac OS X上的交叉编译,我可以构建以下工具-

对于u-boot,我尝试了导致核心转储的最新版本(2014),以及一些未编译的早期版本(2010),因此我使用了2013/10版本()来获取uboot.bin

但是,当我使用
qemu系统arm-M versatilepb-M 128M-nographic-kernel u-boot.bin运行二进制文件时,没有崩溃,但我从屏幕上看不到任何东西

可能有什么问题?我上传了二进制文件

2014年的版本崩溃了


尝试使用ELF格式文件
u-boot
,而不是
u-boot.bin

$ qemu-system-arm -M versatilepb -m 128M -nographic -kernel u-boot


U-Boot 2014.10-rc2-00312-g9169305 (Oct 06 2014 - 20:43:26)

DRAM:  128 MiB
WARNING: Caches not enabled
Flash: Flash protect error at address 37ec0000
Flash protect error at address 37fc0000
64 MiB
*** Warning - bad CRC, using default environment

In:    serial
Out:   serial
Err:   serial
Net:   SMC91111-0
Warning: SMC91111-0 using MAC address from net device

Warning: Your board does not use generic board. Please read
doc/README.generic-board and take action. Boards not
upgraded by the late 2014 may break or be removed.
VersatilePB #
我在我的
OSX10.9.5
系统上构建了
u-boot
commit
9169305595733E268874AE75568AE316233E116
。我使用了可用的ARM工具链二进制文件。Untar
gcc-arm-none-eabi-4_8-2014q3-20140805-mac.tar.bz2
任何地方(例如
$HOME

我使用了
Homebrew
中的
Qemu

$ qemu-system-arm --version
QEMU emulator version 2.1.2, Copyright (c) 2003-2008 Fabrice Bellard

没有-nographic它可以工作吗?没有或没有-nographic它都不能工作。你能解释一下为什么ELF版本可以工作而二进制不能工作吗?另一篇文章()中有一个例子,说明二进制方法只处理-kernel参数。您引用的博客文章来自2010年。Qemu和u-boot的开发速度非常快。如果您在Qemu和/或u-boot邮件列表中搜索,可能会找到一些信息。看起来Qemu有专门的代码来加载u-boot映像。这可能是Qemu或u-boot中的错误。可能不再支持加载二进制图像。如果您决定深入研究并发现以下内容,请在此处回信:)包含“'-kernel bzImage'使用bzImage作为内核映像。内核可以是Linux内核,也可以是多引导格式。”;我想知道ELF格式可能与这种多引导格式有关。我相信bzImage和multiboot是两种特定于x86的映像格式。内核附带的文档不是最新的,对于某些体系结构可能不准确。例如,我前面指出的arm_load_kernel()代码与本文档不匹配。
$ qemu-system-arm --version
QEMU emulator version 2.1.2, Copyright (c) 2003-2008 Fabrice Bellard