# decomp-toolkit

> GameCube/Wii matching-decompilation toolkit that analyzes DOL and REL executables and, from a project configuration, splits them into relocatable objects plus an ldscript.lcf for CodeWarrior's linker, so decompiled objects can replace original ones while the relinked binary is checked against the original. Analysis covers function boundaries, a Metrowerks/SDK signature database, relocations, sections and data objects, and objects are written without an assembler. Its CLI also handles disc images, archives, compression formats, CodeWarrior demangling and DWARF dumps.

- Type: Tool
- Targets: Binary · Game
- Category: Game analysis tools
- Relationship: Foundation tool
- Sources reviewed: 2026-10-18
- Added to the catalog: 2026-10-19
- Original resource: <https://github.com/encounter/decomp-toolkit>
- Primary source: <https://github.com/encounter/decomp-toolkit/blob/0645e16511814920ffb05b25615dd71f1af73e4c/README.md>
- Catalog page: <https://awesomerea.org/resources/decomp-toolkit/>
- Record JSON: <https://awesomerea.org/resources/decomp-toolkit/record.json>
- Chinese version: [简体中文](https://awesomerea.org/zh/resources/decomp-toolkit/index.md)

## Requirements & limits

- Distributed as a single portable binary: release v1.8.4, published 2026-09-09, provides Linux x86_64/i686/aarch64, macOS arm64/x86_64 and Windows x86_64/x86/arm64 builds. The reviewed main commit is one commit ahead of that tag, restoring a metroidbuildinfo command. Building from source needs Rust 1.85+.
- dol split is intended to run inside a decompilation project's build system; the README points new projects to dtk-template for project structure and configuration documentation. Matching builds often need the original game's compiler, Metrowerks CodeWarrior on GameCube/Wii, and the generated linker script targets mwldeppc.exe. DOL/REL files and disc images must come from the user's own game copies.
- Dual-licensed MIT OR Apache-2.0. It analyzes, splits and relinks binaries; it does not decompile to C, and dol diff only reports the most obvious difference in a linked ELF, so per-function matching is checked with tools such as objdiff.

## Primary sources

1. <https://github.com/encounter/decomp-toolkit/blob/0645e16511814920ffb05b25615dd71f1af73e4c/README.md>
2. <https://github.com/encounter/decomp-toolkit/blob/0645e16511814920ffb05b25615dd71f1af73e4c/README.md#L97-L130>
3. <https://github.com/encounter/decomp-toolkit/blob/0645e16511814920ffb05b25615dd71f1af73e4c/README.md#L249-L271>
4. <https://github.com/encounter/decomp-toolkit/blob/0645e16511814920ffb05b25615dd71f1af73e4c/Cargo.toml>
5. <https://github.com/encounter/decomp-toolkit/blob/0645e16511814920ffb05b25615dd71f1af73e4c/LICENSE-MIT>
6. <https://github.com/encounter/decomp-toolkit/blob/0645e16511814920ffb05b25615dd71f1af73e4c/LICENSE-APACHE>
7. <https://github.com/encounter/decomp-toolkit/releases/tag/v1.8.4>
8. <https://github.com/ethteck/splat/blob/7548b9771e6f8418507b23434187fb07741af6d4/README.md#L32-L34>

## More in Games

- [Cheat Engine MCP Bridge](https://awesomerea.org/resources/cheatengine-mcp-bridge/index.md) · Integration
- [ido-static-recomp](https://awesomerea.org/resources/ido-static-recomp/index.md) · Tool
- [PS2Recomp](https://awesomerea.org/resources/ps2recomp/index.md) · Tool
- [Xenosaga I Decomp Compatibility Kit](https://awesomerea.org/resources/decomp-compat-kit/index.md) · Tool
- [GB Recompiled](https://awesomerea.org/resources/gb-recompiled/index.md) · Tool
- [dtk-template](https://awesomerea.org/resources/dtk-template/index.md) · Tool

## About this entry

The description was reviewed against primary sources.
Original editorial content: MIT. Linked projects, papers and assets retain their own rights and licenses.
