This research explore how far a game written in D with raylib-d can travel. The focus is practical: documenting what works, what breaks and why, then packaging the working parts into reusable templates.
Everything here is built around one stack:
- Language: D, compiled in
-betterCmode - Compiler: LDC (LLVM-based)
- Library: raylib through raylib-d
- Host: Linux (the only host tested so far)
A template and Git submodule for building raylib-d games for Android. A native D script (build-android.d) builds libmain.so per ABI.
Research notes on compiling raylib-d games for Linux, Windows, Android and WebAssembly using LDC and -betterC. It covers design decisions, required toolchains, directory layout, per-platform steps, a troubleshooting table and open questions.
-betterCis strongly recommended. The D runtime and GC cause serious problems on Android and WASM, and GC pauses suit frame-sensitive game code poorly. The trade-off is no GC, classes, exceptions or druntime-dependent features.- LDC is the compiler of choice thanks to LLVM's broad platform support and better
-betterChandling. DMD and GDC are not covered.
Found a failure on a device, host or toolchain version we haven't covered? Open an issue or pull request on the relevant repository. Reproducible reports on untested platforms are especially welcome.