Tech News
← Back to articles

Arm Desktop: x86 Emulation

read original related products more articles

This post is part 5 of the "Let me try to use an AArch64 system as a desktop" series:

Whenever people use a non-x86 system, sooner or later someone asks: “But can it run [name of x86-64 only binary]?”. So, let’s check how to make it possible.

Software stack

When you look for ‘how to run x86-64 apps on Fedora/Arm’, you usually end up with Asahi’s documentation about it.

It is a good thing to read to understand the stack. But if your Arm system runs a 4K page size kernel, then most of that documentation can be skipped. You would not need muvm nor binfmt-dispatcher packages.

What you need is FEX-emu, and nothing else, as it recommends all required components.

To make it easier, I recommend removing some of QEMU packages: dnf remove qemu-static-* so only FEX-emu will be used for running foreign architecture binaries.

Checking emulation

Installing FEX-emu should also install the Fedora/x86-64 rootfs. So, let check if emulation is working:

$ uname -m aarch64 $ FEXBash "uname -m" erofsfuse 1.8.9 erofs: /usr/share/fex-emu/RootFS/default.erofs mounted on /run/user/1000/.FEXMount2262322-Fjd32T with offset 0 x86_64

... continue reading