【发布时间】:2020-08-26 12:56:52
【问题描述】:
当我希望 guest 系统为 时,如何在 Ubuntu 18.04 x86_64 主机 系统上运行具有 qemu 的虚拟机>ARMv8(Raspberry Pi 3,对 Cortex A53 处理器更感兴趣)?
背景:
我想在提到的主机系统上为带有 ARMv8 的真机编译一个项目。目前,这是通过直接在主机系统中进行交叉编译来完成的。由于许多不同的原因,我想设置一个虚拟机,它为 ARMv8 编译(虚拟)本机二进制文件。二进制文件需要稍后在真正的 ARMv8 机器上运行。
除了要安装在主机系统上的 Qemu 和正确的 qemu-system-aarch64 之外,还需要一个操作系统的映像。理想情况下与在真正的 ARMv8 设备上运行的相同。 Ubuntu IoT Core 18.04 64 位可在https://ubuntu.com/download/raspberry-pi 获得,我将其保存到名为 ubuntu18045arm64rpi3.img.xz 的本地文件夹中。
解压后得到了解压出来的图片'ubuntu18045arm64rpi3.img'
要使用给定映像和所需架构启动虚拟机,我输入以下内容:
sudo qemu-system-aarch64 -m 1024 -cpu cortex-a53 -M virt -drive if=none,file=ubuntu18045arm64rpi3.img,id=hd0
现在我的主要问题是:
-
我希望虚拟机能够启动,我可以从给定的映像安装操作系统。我做错了什么或如何实现这个目标?
-
稍后,我想在来宾 ARMv8 机器上安装一个编译器(如果还没有的话)并在那里编译我的项目。之后,我计划将编译后的二进制文件传输到真正的 ARMv8 机器上,并希望它们能够毫无困难地运行。目前的方法可以做到吗?
【问题讨论】:
标签: arm cross-platform virtualization qemu