Skip to content

Getting Started

jw edited this page Jul 27, 2026 · 17 revisions

Welcome! Here you'll learn how you can use DolRecomp and ModernGekko together for your next GameCube/Wii Recompilation. It is recommended to use ModernGekko-Template as it sets up the general environment for user's to build their recompilations on, even if not used directly, it can serve as a helpful reference.

By the end of this tutorial, your recomp probably won't (yet) look like this

Screenshot 2026-07-16 204107

BUT your recomp should at least be able to boot up properly, though maybe with some bugs.

0. Getting the tools

You will need:

  1. A C Compiler: (e.g., GCC, Clang, or MSVC)
  2. CMake: (Version 3.20 or higher)
  3. Some other things.

The latest downloads for CMake are available here. For legacy versions, here.

Warning

Versions of CMake that are below 3.20 will not work with this project.

Linux

Default compiler for Linux is set to GCC in ModernGekko-Template.

On a Debian based machine run:

sudo apt-get install -y ninja-build build-essential pkg-config cmake \
    libevdev-dev libudev-dev libgtk-3-dev libsystemd-dev \
    libbluetooth-dev libasound2-dev libpulse-dev libgl1-mesa-dev \
    libxrandr-dev libxi-dev
  • Fedora:
sudo dnf install -y gcc gcc-c++ make ninja-build pkgconf-pkg-config cmake \
    libevdev-devel systemd-devel gtk3-devel bluez-libs-devel \
    alsa-lib-devel pulseaudio-libs-devel mesa-libGL-devel \
    libXrandr-devel libXi-devel
  • Arch Linux and Arch-based distributions:
sudo pacman -S --needed base-devel ninja cmake pkgconf \
    libevdev systemd-libs gtk3 bluez-libs \
    alsa-lib libpulse mesa libglvnd \
    libxrandr libxi

MacOS

Default compiler for MacOS is set to Clang in ModernGekko-Template.

Make sure you have Xcode build tools installed along with homebrew and run:

brew install cmake ninja pkg-config

Windows

Default compiler for Windows is set to MSVC in ModernGekko-Template.

Use winget and run:

winget install -e --id Kitware.CMake
winget install -e --id Ninja-build.Ninja
winget install -e --id Microsoft.VisualStudio.2022.BuildTools --override "--add Microsoft.VisualStudio.Workload.VCTools --includeRecommended"

Install Microsoft Visual Studio.

On Windows, Clang, GCC/MinGW, and MSVC-style generators should all work. If devkitPro is installed, CMake also checks its MSYS2 zlib location.

Alternatively, you can use UCRT64 to build:

winget install -e --id MSYS2.MSYS2

Then, get the toolchain:

 pacman -S --needed \
  base-devel git \
  mingw-w64-ucrt-x86_64-toolchain \
  mingw-w64-ucrt-x86_64-cmake \
  mingw-w64-ucrt-x86_64-ninja

UCRT64 is considerably more reliable, so if you run into issues with MSVC, this is the next best option.

1. Clone the repository:

git clone --recursive https://github.com/ExpansionPak/ModernGekko-Template.git 
cd ModernGekko-Template

2. Building the Tools:

From the repo root:

make tools                        # to build DolRecomp and ModernGekko
  • Experimental LLVM backend

For those who need maximum runtime performance over the default C backend, LLVM is a solid, though currently incomplete, choice.

DolRecomp currently requires LLVM 19 or 20.

To build a game using the LLVM backend for the first time:

make llvm ISO="/path/to/game.iso"

After the game has been extracted, use it's slug:

make llvm GAME=Game-Slug

To build and immediately launch:

make llvm-run GAME=Game-Slug

If CMake cannot locate LLVM automatically, provide it's directory:

make llvm GAME=Game-Slug LLVM_DIR="/path/to/llvm/lib/cmake/llvm"

3. Recompiling and running your game

Now you can use any GameCube or Wii iso, and recompile/run them.

From the repo root:

make run ISO="iso/Your Game.iso"  # first time
make run GAME=<slug>              # subsequent runs, once extracted

4. Post build and run:

After the build completes and you see your recompilation run (if not file an issue with full details), your recompilation can be complete if you like, but there are many things that can be added including: higher resolution, wide screen (including ultra wide), control setup, setting up a launcher installation, and much more. For this, go to Using ModernGekko page.

5. Troubleshooting

If you are having issues with the build process, check if the Troubleshooting Page has your issue. If not, skip to "Reporting an issue" in the sidebar. More often then not, your issue will be here.

Clone this wiki locally