Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

QEMU Virtual Machines

Yoe supports a variety of QEMU targets for testing and development without physical hardware. These are useful for build testing, application development, and CI pipelines.

ProjectArchitectureDescription
qemuarmARM 32-bitVersatile Express Cortex-A15
qemuarm64ARM 64-bitGeneric ARM64 (Cortex-A57)
qemux86x86 32-bitGeneric PC (i586)
qemux86-64x86 64-bitGeneric PC (x86-64)
qemumipsMIPS 32-bitMalta board
qemuppcPowerPC 32-bitMac99 machine
qemuppc64PowerPC 64-bitpseries machine
qemuriscv32RISC-V 32-bitGeneric RISC-V (virt)
qemuriscv64RISC-V 64-bitGeneric RISC-V (virt)

Building an image

  1. git clone https://github.com/YoeDistro/yoe-distro.git
  2. cd yoe-distro
  3. . ./envsetup.sh <project> (e.g., qemuarm64)
  4. yoe_setup
  5. bitbake yoe-simple-image

Running the image

After building, launch the image in QEMU with:

runqemu yoe-simple-image

Common options:

  • runqemu yoe-simple-image nographic — serial console only, no GUI window
  • runqemu yoe-simple-image kvm — use KVM acceleration (x86 host only, for qemux86/qemux86-64)
  • runqemu yoe-simple-image slirp — user-mode networking (no root required)

Notes

  • The qemucommon project contains shared configuration used by other QEMU projects. It is not intended to be built directly.
  • KVM acceleration is available on x86 hosts for qemux86 and qemux86-64, providing near-native performance.
  • For ARM and RISC-V targets, QEMU uses full system emulation which is slower but functional.

References