Skip to content

Compilando

rebquaker edited this page Oct 13, 2026 · 1 revision

Compilando

Precisa do Rust 1.88 ou mais novo. A interface Qt precisa também do Qt 6.4 ou mais novo.

Dependências

Debian, Ubuntu e derivados:

sudo apt install build-essential cmake ninja-build pkg-config python3 clang libclang-dev \
    libglib2.0-dev libasound2-dev libudev-dev libwayland-dev libxkbcommon-dev \
    qt6-base-dev qt6-base-dev-tools qt6-declarative-dev qt6-declarative-dev-tools qmake6 \
    qt6-wayland qml6-module-qtquick qml6-module-qtquick-controls qml6-module-qtquick-layouts \
    qml6-module-qtquick-templates qml6-module-qtquick-window qml6-module-qtqml-workerscript

No Arch: qt6-base qt6-declarative qt6-wayland. O build acha o Qt pelo qmake6 ou pelo qmake; para usar outro, aponte a variável QMAKE para ele.

Para conferir o que falta antes de compilar:

python3 ferramentas/prepara_build.py

Desktop

cargo build --release --locked -p zeebx-standalone-qt     # target/release/zeebx-qt
cargo build --release --locked -p zeebx-standalone-egui   # target/release/zeebx (legado)

Pela linha de comando, o binário do egui abre um jogo direto:

cargo run --release -p zeebx-standalone-egui -- run "roms/Quake.zip" --window

O run relata onde o jogo parou, o que ele pediu que o emulador ainda não tem e o log que os próprios desenvolvedores do jogo deixaram no binário. As opções de depuração estão no ARCHITECTURE.md.

Testes

cargo test --release --locked -p zeebx -p zeebx-standalone-egui -p zeebx-standalone-qt

Libretro e headless

cargo build --release --locked -p zeebx-headless -p zeebx-libretro
python3 ferramentas/verifica_core.py target/release/libzeebx_libretro.so
python3 ferramentas/instala_core.py --release    # instala o .so e o .info no RetroArch

O verifica_core.py abre o core como o RetroArch abre e chama a ABI, o que pega dependência que faltou no link.

Android, iOS e Switch

Cada um tem o seu passo a passo no repositório:

Instaladores

Os instaladores saem do cargo-packager. O roteiro completo de cada formato (o .deb, o AppImage, o Windows e o macOS) está no README e no release.yml.

Clone this wiki locally