Files
yaze/docs/02-build-instructions.md
scawful 50f83e818c Update README and documentation for YAZE v0.3.0 release
- Revamped README to reflect the new branding and major features of YAZE, including complete Asar 65816 assembler integration and enhanced CLI tools.
- Added new documentation files for getting started, build instructions, Asar integration, and comprehensive testing guides.
- Removed outdated documentation and streamlined the structure for better navigation.
- Introduced a changelog to track version history and significant updates.
- Updated API reference and added detailed guides for dungeon and overworld editing functionalities.
2025-09-25 21:10:35 -04:00

1.6 KiB

Build Instructions

YAZE uses CMake 3.16+ with modern target-based configuration. For VSCode users, install the CMake extensions:

Quick Build

# Development build
cmake --preset dev
cmake --build --preset dev

# CI build (minimal dependencies)
cmake --preset ci
cmake --build --preset ci

Dependencies

Core Dependencies

  • SDL2: Graphics and input library
  • ImGui: Immediate mode GUI library with docking support
  • Abseil: Modern C++ utilities library
  • libpng: Image processing library

v0.3.0 Additions

  • Asar: 65816 assembler for ROM patching
  • ftxui: Terminal UI library for CLI
  • GoogleTest: Comprehensive testing framework

Platform-Specific Setup

Windows

{
  "dependencies": [
    "abseil", "sdl2", "libpng"
  ]
}

msys2 (Advanced)

Install packages: mingw-w64-x86_64-gcc, mingw-w64-x86_64-cmake, mingw-w64-x86_64-sdl2, mingw-w64-x86_64-libpng, mingw-w64-x86_64-abseil-cpp

macOS

brew install cmake sdl2 zlib libpng abseil boost-python3

Linux

Use your package manager to install the same dependencies as macOS.

iOS

Xcode required. The xcodeproject file is in the ios directory. Link SDL2.framework and libpng.a.

Build Targets

  • yaze: Desktop GUI application
  • z3ed: Enhanced CLI tool
  • yaze_c: C library for extensions
  • yaze_test: Test suite executable
  • yaze_emu: Standalone SNES emulator