天天看点

Windows 10 x64下编译安装ninja1. 准备工作2. Clone ninja库3. 编译ninja4. 安装ninja

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

文件。

Windows 10 x64下编译安装ninja1. 准备工作2. Clone ninja库3. 编译ninja4. 安装ninja

4. 安装ninja

S1. 在系统分区下创建一个文件夹

local

S2. 在上述

local

文件夹中创建一个文件夹

Ninja

S3. 将生成的

ninja.exe

文件拷贝到S2创建的文件夹

Ninja

中,如下图所示。

Windows 10 x64下编译安装ninja1. 准备工作2. Clone ninja库3. 编译ninja4. 安装ninja

S4. 将目录

C:\local\Ninja

添加到系统的

Path

环境变量中,如下图所示:

Windows 10 x64下编译安装ninja1. 准备工作2. Clone ninja库3. 编译ninja4. 安装ninja
Windows 10 x64下编译安装ninja1. 准备工作2. Clone ninja库3. 编译ninja4. 安装ninja

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

继续阅读