QEMU
This provides a few runnable targets:
bazelisk run //debian/amd64/qemu-system-arm:qemu-system-aarch64
bazelisk run //debian/arm64/qemu-system-arm:qemu-system-aarch64
bazelisk run //debian/amd64/qemu-system-arm:qemu-system-x86_64
bazelisk run //debian/arm64/qemu-system-arm:qemu-system-x86_64
These are then registered as a Bazel toolchain, which can be executed as so:
bazelisk run -- //labgrid/toolchain/qemu-system:resolved
That will provide the correct QEMU binary for the host system and target constraints.
bazelisk run -- //labgrid/toolchain/qemu-system:resolved --platforms=@toolchain_utils//toolchain/platform:arm64-linux
That will resolve to //debian/amd64/qemu-system-arm:qemu-system-aarch64
, a QEMU system for amd64
host emulating arm64
.
Edited by Matthew Clarkson