Building the Emulator

For developers, enthusiasts, and contributors, building Xenia Canary from source is a rewarding way to stay at the cutting edge of Xbox 360 emulation. Whether you want to test the latest features, contribute to the project, or customize your own build, this guide will walk you through the process.


Prerequisites

Before you begin, make sure your system meets the development requirements:

  • Operating System: Windows 10/11 (64-bit) or Linux (Ubuntu recommended)
  • Compiler: Visual Studio 2022 (Windows) or Clang (Linux)
  • Dependencies:
    • CMake (3.20+)
    • Python (for build scripts)
    • Vulkan SDK (for GPU rendering)

For detailed setup instructions, check our GitHub repository.


Cloning the Repository

Open a terminal or command prompt and run the following command:

git clone https://github.com/xenia-canary/xenia.git
cd xenia

This will download the full source code to your machine.


Configuring the Build (Windows)

  1. Open CMake GUI: Set the source directory to your cloned xenia folder.
  2. Set Build Directory: Choose an empty folder for build output.
  3. Configure: Select your generator (e.g., Visual Studio 2022) and platform (x64).
  4. Generate: Press “Generate” to create project files.

Compiling the Emulator (Windows)

  1. Open Visual Studio: Load the generated project (Xenia.sln).
  2. Select Build Configuration: Choose “Release” for optimized performance.
  3. Build the Solution: Hit Ctrl + Shift + B or use the build menu.

After compilation, you’ll find the executable in the output directory.


Building on Linux

  1. Install Dependencies: Use your package manager to install development libraries (see GitHub for a full list).
  2. Run CMake:
cmake -B build .
  1. Compile:
cmake --build build --config Release

This generates the emulator binary ready for testing.


Testing Your Build

Once you’ve built the emulator, run it with a valid Xbox 360 game file:

xenia.exe path/to/your/game.iso

Check the console output for logs and potential errors.


Contributing to Xenia Canary

We welcome community contributions! Here’s how to get involved:

  • Fork the Repository: Create your own copy of the project.
  • Create a Branch: Work on new features or fixes in a separate branch.
  • Submit a Pull Request: Share your changes for review and possible inclusion in the main build.

For contribution guidelines and coding standards, see our Contributing Guide.


Staying Up to Date

Xenia Canary evolves rapidly, so keep your local repository updated:

git pull origin main

This ensures you always have the latest features, optimizations, and bug fixes.