ninja
🚀️ Always up-to-date Ninja binaries for Linux, Windows, macOS, and FreeBSD - just download and use it.
Install
The command installs Ninja to /usr/local/bin. Replace it with a different path
if needed.
curl -sSL https://github.com/prepkg/ninja/releases/latest/download/ninja-x86_64-linux-gnu.tar.gz \
| sudo tar xz -C /usr/local/bin
The command installs Ninja in the current directory. Replace .\ with a
different path if needed.
curl -sSL https://github.com/prepkg/ninja/releases/latest/download/ninja-x86_64-windows-msvc.tar.gz \
| tar xz -C .\
The command installs Ninja to /usr/local/bin. Replace it with a different path
if needed.
curl -sSL https://github.com/prepkg/ninja/releases/latest/download/ninja-aarch64-macos-clang.tar.gz \
| sudo tar xz -C /usr/local/bin
The command installs Ninja to /usr/local/bin. Replace it with a different path
if needed.
curl -sSL https://github.com/prepkg/ninja/releases/latest/download/ninja-x86_64-freebsd-clang.tar.gz \
| sudo tar xz -C /usr/local/bin
Why?
Outdated distro packages
Many Linux distributions ship outdated Ninja versions through their package managers, sometimes years behind upstream.
Limited official releases
The official Ninja releases only ship a single binary per platform. This repository builds and publishes Ninja for a much wider range of platforms and architectures, so you don't have to build it yourself.
Always up to date
GitHub CI workflows rebuild and publish Ninja automatically whenever a new version is released upstream.
No extra dependencies
Windows binaries statically link the MSVC runtime and musl-based Linux binaries are fully static, so there's no separate runtime to install. The remaining builds only depend on base system libraries that are already present on the OS.
Supported Platforms
| Platform | Architectures | Notes |
|---|---|---|
| Linux | x86_64, aarch64, arm, riscv64 | GNU targets are dynamically linked with an older glibc version; musl targets are fully statically linked. |
| Windows | x86_64, aarch64 | Statically linked with the MSVC runtime (/MT). |
| macOS | aarch64 | Targeting macOS 11.0 (Big Sur) and later. |
| FreeBSD | x86_64 | Targeting FreeBSD 13.5 and later. |