Introduction to Ninja

Ninja is a small build system with a focus on speed.

This package is known to build and work properly using an LFS-8.1 platform.

Package Information

Ninja Dependencies




re2c (only needed to modify the build), Emacs-25.2 (to generate lisp files), asciidoc-8.6.9 (to build the manual), and Doxygen-1.8.13 (to build API documentation)

User Notes:

Installation of Ninja

Install Ninja by running the following commands:

./ --bootstrap

If Emacs is installed and you wish to build lisp files:

emacs -Q --batch -f batch-byte-compile misc/ninja-mode.el

To test the results, issue the following commands:

./ &&
./ninja ninja_test &&
./ninja_test --gtest_filter=-SubprocessTest.SetWithLots

Now, as the root user:

install -vm755 ninja /usr/bin/ &&
install -vDm644 misc/ninja.vim \
                /usr/share/vim/vim80/syntax/ninja.vim &&
install -vDm644 misc/bash-completion \
                /usr/share/bash-completion/completions/ninja &&
install -vDm644 misc/zsh-completion \

If Emacs is installed, while still the root user:

install -vDm644 misc/ninja-mode.el \
install -vDm644 misc/ninja-mode.elc \

If you have asciidoc-8.6.9 installed and wish to build the HTML manual, execute the following commands (as the root user):

ninja manual &&
install -vDm644 doc/manual.html /usr/share/doc/ninja-1.7.2/manual.html

If you have Doxygen-1.8.13 installed and wish to build the API documentation, execute the following commands (as the root user):

ninja doxygen &&
install -vDdm644 doc/doxygen/html/* /usr/share/doc/ninja-1.7.2/

Command Explanations

emacs -Q --batch -f batch-byte-compile misc/ninja-mode.el: regenerates the emacs lisp files.


Installed Programs: ninja
Installed Library: none
Installed Directories: /usr/share/doc/ninja-1.7.2

Short Descriptions


is the Ninja build system.

Last updated on 2017-08-21 23:29:00 -0700