1. 準備工作
S1. 安裝git for Windows,下載下傳位址:https://git-scm.com/download/win
S2. 安裝Visual Studio 2015
S3. 安裝Python 3.x
2. Clone ninja庫
打開git bash,分别運作如下兩行指令:
git clone git://github.com/ninja-build/ninja.git && cd ninja
git checkout release
3. 編譯ninja
S1. 在Windows目錄中找到上述clone到本地ninja庫的檔案夾,通常位于
C:\users\<XXXX>
,這裡的XXXX就是目前自己的使用者。
S2. 啟動Windows CMD,cd到上述ninja庫的檔案夾内部。
S3. 在CMD中分别運作如下兩行指令:
"C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x64
python configure.py --bootstrap
會有如下輸出(中間省略了大量形如“包含檔案”的内容):
bootstrapping ninja...
warning: A compatible version of re2c (>= 0.11.3) was not found; changes to src/*.in.cc will not affect your build.
build.cc
build_log.cc
clean.cc
clparser.cc
debug_flags.cc
depfile_parser.cc
deps_log.cc
disk_interface.cc
edit_distance.cc
eval_env.cc
graph.cc
graphviz.cc
lexer.cc
line_printer.cc
manifest_parser.cc
metrics.cc
state.cc
string_piece_util.cc
util.cc
version.cc
subprocess-win32.cc
includes_normalize-win32.cc
msvc_helper-win32.cc
msvc_helper_main-win32.cc
minidump-win32.cc
getopt.c
ninja.cc
正在生成代碼
已完成代碼的生成
wrote build.ninja.
bootstrap complete. rebuilding...
[2/29] CXX build\depfile_parser.obj
注意: 包含檔案: c:\users\yafux\ninja\src\depfile_parser.h
注意: 包含檔案: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\string
注意: 包含檔案: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\istream
注意: 包含檔案: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\ostream
注意: 包含檔案: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\ios
注意: 包含檔案: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\xlocnum
注意: 包含檔案: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\climits
...
注意: 包含檔案: c:\users\yafux\ninja\src\graphviz.h
注意: 包含檔案: c:\users\yafux\ninja\src\manifest_parser.h
注意: 包含檔案: c:\users\yafux\ninja\src\lexer.h
注意: 包含檔案: c:\users\yafux\ninja\src\state.h
注意: 包含檔案: c:\users\yafux\ninja\src\version.h
[29/29] LINK ninja.exe
正在生成代碼
已完成代碼的生成
S4. 在上述ninja庫的檔案夾内部,可以看到編譯後生成的
ninja.exe
檔案。

4. 安裝ninja
S1. 在系統分區下建立一個檔案夾
local
。
S2. 在上述
local
檔案夾中建立一個檔案夾
Ninja
。
S3. 将生成的
ninja.exe
檔案拷貝到S2建立的檔案夾
Ninja
中,如下圖所示。
S4. 将目錄
C:\local\Ninja
添加到系統的
Path
環境變量中,如下圖所示:
S5. 啟動一個新的Windows CMD視窗,并運作如下指令進行驗證:
ninja --help
運作後會有如下輸出:
usage: ninja [options] [targets...]
if targets are unspecified, builds the 'default' target (see manual).
options:
--version print ninja version ("1.9.0")
-v, --verbose show all command lines while building
-C DIR change to DIR before doing anything else
-f FILE specify input build file [default=build.ninja]
-j N run N jobs in parallel (0 means infinity) [default=6 on this system]
-k N keep going until N jobs fail (0 means infinity) [default=1]
-l N do not start new jobs if the load average is greater than N
-n dry run (don't run commands but act like they succeeded)
-d MODE enable debugging (use '-d list' to list modes)
-t TOOL run a subtool (use '-t list' to list subtools)
terminates toplevel options; further flags are passed to the tool
-w FLAG adjust warnings (use '-w list' to list warnings)
S6. 至此,ninja在Windows 10下的編譯安裝就完成了。
參考資料:
https://github.com/ninja-build/ninja/blob/master/HACKING.md