Getting Started
Odin is dead-simple to get started with. Pick your platform and follow the steps below.
Windows macOS Linux FreeBSD NetBSD OpenBSD Haiku experimental
Recommended
Download a release
Download the latest monthly or nightly release for Windows x86-64.
Requirements
MSVC Build Tools
Odin needs the MSVC compiler and Windows SDK. Download the installer, select "Desktop development with C++", and tick both MSVC and Windows SDK.
For a minimal install, use this third-party script.
For a minimal install, use this third-party script.
PATH (optional)
Add the Odin directory to PATH so
odin.exe is accessible from anywhere.
Advanced Build from source
- Install MSVC Build Tools as described above.
- Set up the x64 environment — either run the x64 Native Tools Command Prompt for VS20xx shortcut (search the Start menu), or run:
vcvarsall.bat x64
- Clone the repository:
git clone https://github.com/odin-lang/Odin
- Navigate to the folder:
cd Odin
- Optionally check out a specific release:
git checkout dev-YYYY-MM
- Build:
build.bat release
- Optionally add to PATH (see above).
Updating
- Open the x64 developer command prompt (step 2 above)
- Navigate to the Odin folder
- Optionally: git checkout dev-YYYY-MM
- git pull
- build.bat release
Recommended
Download a release
Download the latest monthly or nightly release for macOS (x86-64 and ARM64).
Requirements
XCode Command-Line Tools
xcode-select --install
If that command is not found, install XCode from the App Store first.
PATH (optional)
Add the Odin folder to your shell's path or symlink the binary:
echo 'export PATH="/path/to/Odin:$PATH"' >> ~/.zshrc
The compiler expects base, core, and vendor in the same folder. Override with ODIN_ROOT.
Quarantine (if needed)
If macOS says it can't verify the executable, unquarantine it:
xattr -d com.apple.quarantine /path/to/odin
WASM
The release does not include
wasm-ld. Install it separately:
brew install lld
Advanced Build from source
- Install XCode Command-Line Tools:
xcode-select --install
- Install Homebrew and LLVM (versions 14, 17, 18, 19, 20, or 21):
brew install llvmTo use a specific version or path, set
LLVM_CONFIG:LLVM_CONFIG=/path/to/llvm-config make release-native - Clone the repository:
git clone https://github.com/odin-lang/Odin
- Navigate to the folder:
cd Odin
- Optionally check out a specific release:
git checkout dev-YYYY-MM
- Build:
make release-native
- Optionally add to PATH (see above).
WASM — to compile for WASM, Odin needs
wasm-ld from lld:
brew install lld
Updating
- Navigate to the Odin folder
- Optionally: git checkout dev-YYYY-MM
- git pull
- make release-native
Recommended
Download a release
Download the latest monthly or nightly release for Linux (x86-64 and ARM64) or BSD.
Requirements
Clang
Clang is used for linking. Install via your package manager:
apt install clang # Debian / Ubuntu
dnf install clang # Fedora
PATH (optional)
Add the Odin folder to your shell's path:
echo 'export PATH="/path/to/Odin:$PATH"' >> ~/.bashrc
The compiler expects base, core, and vendor in the same folder. Override with ODIN_ROOT.
Advanced Build from source
- Install Clang and LLVM (versions 14, 17, 18, 19, 20, or 21):
apt install clang llvm # may also need llvm-develEnsure
llvm-config(or a versioned variant likellvm-config-18) andclangare on your$PATH. To specify a path:LLVM_CONFIG=/path/to/llvm-config make release-native - Clone the repository:
git clone https://github.com/odin-lang/Odin
- Navigate to the folder:
cd Odin
- Optionally check out a specific release:
git checkout dev-YYYY-MM
- Build:
make release-native
- Optionally add to PATH (see above).
atomic.h errors — run
clang++ -v and note the "Selected GCC installation" version (usually 12 or 14). Install the matching package (usually libstdc++‑VERSION‑dev). See this GitHub issue for details.
Updating
- Navigate to the Odin folder
- Optionally: git checkout dev-YYYY-MM
- git pull
- make release-native
Package Managers
Third-party package managers also ship Odin. Repology tracks their status:
These packages are maintained by third parties — direct support questions to their maintainers.