Building Odin from Source on Debian: A Clean Compile

Building the Odin programming language compiler from source on Debian — clang/LLVM setup, resolving the build, and a first "hello world" to confirm the toolchain works end to end.

Wanted to try out Odin — a data-oriented systems language built as a modern alternative to C — on the Debian desktop. Building from source turned out to be genuinely straightforward, no surprises.

Prerequisites: Debian’s stock repos already had everything needed — clang 19.1.7 and llvm 19 were both current enough (Odin supports LLVM 17–22), so no need to add the apt.llvm.org repo that’s sometimes necessary on older distros.

Build steps:

  1. Cloned the repo: git clone https://github.com/odin-lang/Odin (576 MB, includes Git LFS assets pulled automatically during clone)
  2. Ran git lfs install to set up hooks
  3. Compiled with make release-native — a single clang++ invocation linking against libLLVM-19.so, done in a couple of minutes
  4. No atomic.h errors this run — that’s a known gotcha on some Debian setups where libstdc++-<version>-dev is missing, but this build didn’t hit it
  5. Added ~/Odin to PATH via .bashrc

Verification: odin version confirmed the build (dev-2026-09:ec0bd121d), then compiled and ran a minimal hello-world with odin run hello.odin -file — clean output, no linker issues.

Next up: actually writing something in it.