Files
jaildoctors_dilemma/BUILDING.md
2026-03-21 18:51:53 +01:00

2.2 KiB

Compilar JailDoctor's Dilemma

Linux (Debian/Ubuntu)

Instal·la les dependències:

sudo apt install cmake make g++ xxd glslang-tools glslc

Per a SDL3, instal·la el paquet de desenvolupament si està disponible al teu repositori:

sudo apt install libsdl3-dev

Si libsdl3-dev no està als repos (SDL3 és recent i pot no estar a Debian stable), compila'l des del codi font:

git clone https://github.com/libsdl-org/SDL.git --branch release-3.x --depth 1
cd SDL && cmake -B build && cmake --build build && sudo cmake --install build

Compila el joc:

cmake -B build
cmake --build build

Windows (MinGW via WinLibs)

  1. Instal·la WinLibs (MinGW-w64 amb GCC)
  2. Instal·la CMake
  3. Descarrega les biblioteques de desenvolupament de SDL3 per a MinGW — copia les capçaleres a include/ i els fitxers .a a lib/ de MinGW
  4. Instal·la el Vulkan SDK — proporciona glslc per a la compilació dels shaders

Compila el joc (des d'un terminal MinGW):

cmake -B build -G "MinGW Makefiles"
cmake --build build

macOS

Instal·la les dependències amb Homebrew:

brew install cmake sdl3 glslang

Compila el joc:

cmake -B build
cmake --build build

Què fa la compilació

cmake --build build ho gestiona tot en ordre:

  1. Compila els shaders — regenera postfx_vert_spv.h / postfx_frag_spv.h si els fitxers .vert o .frag han canviat (requereix glslc)
  2. Compila el joc — només recompila els fitxers .cpp modificats
  3. Empaqueta els recursos — regenera resources.pack des de data/ si algun asset ha canviat

Si glslc no està instal·lat, s'utilitzen les capçaleres de shaders precompilades (incloses al repositori).

Nota: El file(GLOB_RECURSE) sobre data/ s'avalua en temps de configuració de CMake. Si afegeixes un fitxer nou a data/, executa cmake -B build de nou perquè CMake el detecte com a dependència.

L'executable es genera a l'arrel del projecte: ./jaildoctors_dilemma