Skip to content
/ FEX Public
forked from FEX-Emu/FEX

A fast usermode x86 and x86-64 emulator for Arm64 Linux

License

Notifications You must be signed in to change notification settings

pmatos/FEX

This branch is 136 commits behind FEX-Emu/FEX:main.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

44c65c3 · Jan 29, 2025
Jan 23, 2025
Sep 18, 2023
Jul 13, 2023
Aug 31, 2024
Nov 21, 2021
Jan 27, 2025
Sep 13, 2024
Jan 20, 2025
Jan 29, 2025
Oct 11, 2024
Jan 22, 2025
Jan 29, 2025
Jan 23, 2025
Jan 7, 2025
Mar 24, 2021
Jan 29, 2025
May 20, 2024
Jan 21, 2025
Jan 21, 2025
Sep 6, 2024
Sep 16, 2024
Jan 15, 2025
Apr 24, 2020
Sep 2, 2022
Jan 19, 2024
Mar 6, 2020
Jan 1, 2025
Sep 6, 2024
Oct 10, 2022
Oct 10, 2022

Repository files navigation

中文

FEX - Fast x86 emulation frontend

FEX allows you to run x86 and x86-64 binaries on an AArch64 host, similar to qemu-user and box86. It has native support for a rootfs overlay, so you don't need to chroot, as well as some thunklibs so it can forward things like GL to the host. FEX presents a Linux 5.15+ interface to the guest, and supports only AArch64 as a host. FEX is very much work in progress, so expect things to change.

Quick start guide

For Ubuntu 22.04, 24.04 and 24.10

Execute the following command in the terminal to install FEX through a PPA.

curl --silent https://raw.githubusercontent.com/FEX-Emu/FEX/main/Scripts/InstallFEX.py --output /tmp/InstallFEX.py && python3 /tmp/InstallFEX.py && rm /tmp/InstallFEX.py

This command will walk you through installing FEX through a PPA, and downloading a RootFS for use with FEX.

Ubuntu PPA is updated with our monthly releases.

For everyone else

Please see Building FEX.

Getting Started

FEX has been tested to build and run on ARMv8.0+ hardware. ARMv7 hardware will not work. Expected operating system usage is Linux. FEX has been tested with the following Linux OSes:

  • Ubuntu 22.04
  • Ubuntu 24.04
  • Ubuntu 24.10
  • Arch Linux

On AArch64 hosts the user MUST have an x86-64 RootFS Creating a RootFS.

Navigating the Source

See the Source Outline for more information.

Building FEX

Follow the guide on the official FEX-Emu Wiki here.

RootFS generation

AArch64 hosts require a rootfs for running applications. Follow the guide on the wiki page for seeing how to set up the rootfs from scratch https://wiki.fex-emu.com/index.php/Development:Setting_up_RootFS

FEX diagram

About

A fast usermode x86 and x86-64 emulator for Arm64 Linux

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 59.6%
  • Assembly 30.5%
  • C 7.1%
  • Python 1.5%
  • CMake 1.0%
  • QML 0.3%