IT用語集 › プログラミング › Ninja

Ninja

プログラミング Svenska → 更新: 2026-10-22

速度を追求した最小限のビルドシステム。2010 年に Google の Evan Martin が、もともと Chromium のために作った。ビルドに数分かかるようになったら Make の代わりに使う。

発想はこうだ。Make は人間が書くには表現力があるが、インクリメンタルビルドの道具としては出来が悪い。Ninja のファイルは低レベルで、通常は CMake、Meson、GN が生成するが、依存関係の追跡は速い(並列実行、タイムスタンプに慎重、「phony」ターゲットにも賢い)。

生まれ故郷の Chromium のビルドのほか、LLVM や多くの現代的な C++/Rust プロジェクトで使われる。いまや CMake の標準バックエンドでもある(cmake -G Ninja)。

← 用語集に戻る