[Deprecated] Building Mesa on Arch Linux

This guide exists mainly for reference and advanced users. Today, many Arch-based users can get newer Mesa builds directly through trusted repositories. Still, understanding why and how Mesa and LLVM affect Yuzu performance is valuable. Especially if you troubleshoot crashes or experiment with bleeding-edge drivers.

Why Mesa and LLVM Matter for Yuzu on AMD GPUs

If you’re running Yuzu on an AMD GPU, driver choice can make or break your experience.

At a high level, AMD users traditionally have two options:

  • Windows + Vulkan backend
    Offers good raw performance, but stability can be poor. Yuzu’s Vulkan backend still struggles with memory management, leading to freezes or random crashes in certain games.
  • Linux + OpenGL backend (Mesa RadeonSI)
    Generally more stable, especially on Arch-based systems. However, older stable Mesa and LLVM versions, commonly shipped by default. These are known to cause unrecoverable crashes in many Yuzu titles.
Deprecated guide showing how Mesa was built on Arch Linux using terminal commands

Supported Systems

To follow this guide, you’ll need:

If this is your first time using Linux, Manjaro is generally the smoother option since it handles most of the setup for you. Arch, on the other hand, is more hands-on and expects you to configure things yourself, which is great if you want full control. This guide assumes your system is already installed and doesn’t cover the installation process itself.

Step 1: Update Your System

Start by syncing your system so you’re not fighting old libraries later:

sudo pacman -Syu

This doesn’t guarantee a smooth build, but it cuts down on avoidable conflicts.

Step 2: Install Required Build Tools

If you’ve never compiled anything from source on Arch, grab the standard build tools now:

sudo pacman -S --needed git base-devel

Anyone who has already built Yuzu on Linux probably has these installed, so this step may do nothing.

Step 3: Enable Chaotic-AUR (For llvm-git)

Mesa-git depends on a newer LLVM than Arch’s stable repos provide. The cleanest way around that is Chaotic-AUR, which publishes daily llvm-git builds. Add Chaotic-AUR using their official instructions, then refresh your system again:

sudo pacman -Syu

One important caveat: don’t install Mesa packages directly from Chaotic-AUR (mesa-aco-git, mesa-tkg-git, etc.). Most of them still link against stable LLVM, which defeats the point. We’ll let Mesa pull in the correct LLVM later.

Step 4: Clone the Mesa-git Build Script

Mesa-git itself lives in the AUR and is built from a PKGBUILD. Clone it and move into the directory:

git clone https://aur.archlinux.org/mesa-git.git

cd mesa-git

Everything needed to build and package Mesa is already there.

Step 5: Build Mesa with the Correct LLVM Version

By default, this PKGBUILD will try to use stable LLVM. To force it to link against llvm-git from Chaotic-AUR, set the environment variable below when building:

MESA_WHICH_LLVM=3 makepkg -si

During the install phase, pacman will ask to replace:

  • llvm → llvm-git
  • llvm-libs → llvm-libs-git
  • clang → clang-git

Answer “yes” to each. This step can take a while, especially on slower CPUs, so don’t assume it’s stuck. Once it finishes, reboot so the new stack is fully loaded.

Step 6: Verify Mesa and LLVM Installation

After rebooting, install the Mesa demo utilities:

sudo pacman -S mesa-demos

Then check what OpenGL is actually using:

glxinfo | grep "OpenGL renderer"

You’re looking for two things: your AMD GPU should be listed correctly, and the LLVM version should be 12 or newer. If both line up, Mesa-git is doing what it’s supposed to.

Optional: Prevent pacman from Overwriting Mesa-git

System upgrades can occasionally overwrite mesa-git with the repo Mesa package. If you want to stop that, open pacman’s config:

sudo nano /etc/pacman.conf

Find the IgnorePkg line, uncomment it, and add:

IgnorePkg = mesa-git

If you’re already ignoring other packages, separate them with commas.

Final Thoughts

For AMD GPU users, Yuzu runs far more reliably on Linux when paired with up-to-date Mesa and LLVM builds. While this setup won’t magically fix every game, it eliminates many crashes caused by outdated drivers and shader compilation issues.

If stability matters more than convenience and you’re comfortable with Arch-based systems. Mesa-git remains one of the most effective ways to improve Yuzu performance on AMD hardware.