QEMU与BeagleBone的支持

时间:2016-02-17 02:56:24

标签: ubuntu qemu beagleboneblack apt linaro

我想模仿BeagleBone Black。似乎QEMU是唯一支持ARM的Linux仿真的仿真器。但是我很难找到合适的模拟器。

我尝试使用qemu.org中的QEMU构建,但似乎机器" beagle"不支持(也来自" qemu-system-arm -machine help&#34的输出;并不是最小的beagle作为支持的机器)。我发现一些帖子说Linaro有一个支持BeagleBone的qemu版本,并且可以在Ubuntu上使用apt-get安装。还有一个包含说明的YouTube视频:

https://www.youtube.com/watch?v=__6XmxOrL3o

然而,似乎说明不再有效。我有Ubuntu 14.04。我尝试了以下方法:

1)sudo add-apt-repository ppa:linaro-maintainers / tools

这会超时并报告错误的PPA格式错误。

2)然后我按照说明进行操作:

https://wiki.linaro.org/Platform/Systems/Repository

然而,在添加这些存储库之后,没有添加qemu,所以在我的apt存储库中我只有来自qemu.org的qemu(它不支持beaglebone)

3)然后我找到了这个页面:

https://launchpad.net/~linaro-maintainers/+archive/ubuntu/tools

所以我尝试了以下内容:

sudo add-apt-repository http://ppa.launchpad.net/linaro-maintainers/tools/ubuntu

然后还使用" sudo apt-key add"下载并添加了公钥。命令。

这似乎是在做完" sudo apt-get update"和" apt-cache显示qemu-system"我看到以下内容:

包装:qemu-system 资料来源:qemu-linaro 版本:2.2.0~rc3 + git8 + gdb12451-63linaro + trusty 架构:amd64 维护者:Ubuntu开发人员 已安装尺寸:133812 取决于:qemu-linaro-keymaps,libasound2(&gt; = 1.0.16),libbluetooth3(&gt; = 4.91),libbrlapi0.6,libc6(&gt; = 2.15),libcurl3-gnutls(&gt; = 7.16.3), libfdt1,libgcc1(&gt; = 1:4.7),libgl1-mesa-glx | libgl1,libglib2.0-0(&gt; = 2.24.0),libgnutls26(&gt; = 2.12.17-0),libncurses5(&gt; = 5.5-5~),libpixman-1-0(&gt; = 0.15。 16),libpng12-0(&gt; = 1.2.13-4),libpulse0(&gt; = 1:0.99.1),libsasl2-2(&gt; = 2.1.24),libsdl1.2debian(&gt; = 1.2。 11),libstdc ++ 6(&gt; = 4.6),libtinfo5,libuuid1(&gt; = 2.16),libvdeplug2,libx11-6,zlib1g(&gt; = 1:1.2.0) 建议:桑巴舞 中断:qemu(&lt; <0.11.0-2),qemu-kvm-extras(&lt;&lt; 0.13.50-2011.02-0~rc1-0ubuntu1) 取代:qemu(&lt; <0.11.0-2),qemu-kvm-extras(&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt; 0.13.50-2011.02-0~rc1-0ubuntu1) 主页:https://launchpad.net/qemu-linaro/

(我只粘贴了前几行)。

然而,在安装了qemu-system(sudo apt-get install qemu-system)之后,它仍然没有BeagleBone支持(qemu-system-arm -machine帮助没有显示任何beagle)。

所以我想知道是否有人知道在Ubuntu上安装QEMU的地方有BeagleBone支持。我应该添加另一个存储库吗?我是Ubuntu,apt和Linaro的新手,所以我到目前为止都没有想法。

1 个答案:

答案 0 :(得分:11)

我遇到了你的问题,因为我整天都试图做同样的事情。我也在使用(X)ubuntu 14.04。

简短的回答是:没有开箱即用的支持Beagle Bone 的QEMU。

你对qemu-linaro有一些支持OMAP3是正确的,包括 beagle beaglexm 。这些适用于 Beagle Board Beagle Board xM 。 Beagle Board 系列使用OMAP 3530,而Beagle Bone 系列(常规和黑色,与我一样)使用OMAP 335x。

此外,我无法找到包含二进制qemu-linaro的工作PPA。您尝试安装的旧版本曾用于包含QEMU,但不再包含QEMU - 即使是可靠的(14.04)。

根据Saucy (13.10) qemu-linaro的包裹清单,在该PPA中。

Trusty (14.04)消失了。我不知道为什么你的apt-cache显示任何东西 - 我甚至无法复制它。

您可以构建支持OMAP 3和Beagle Board 的QEMU版本

所以我做的是克隆git repo并编译qemu-linaro。这很简单,您可能只需要为库依赖项添加一些-dev包。我的机器已经拥有了大部分所需的东西。

此版本提供-M beagle或-M beaglexm选项。

然后我花了一整天的时间试图找出为什么我的Beagle Bone MDL和U-Boot在弄清楚 Bone != Board 。 Gah ......他们的内存映射略有不同,并且不是相同的东西。

所以现在我为Beagle Board 而不是 Bone 重建我的测试图像,它实际上是用最新的qemu-linaro启动的!

令人遗憾的是,OMAP 3尚未升级到主要的QEMU。一年前有一些关于它的邮件列表流量,但它似乎没有去过任何地方。似乎并不是很难添加Beagle Bone Black机器类型,但这种情况还没有发生。