ninja使用
原始引用地址: ninja使用
time: 2010.01.13 22:11
概述
? 在android和chrome,還有webrtc的項(xiàng)目中都用到了ninja作為編譯項(xiàng)目使用工具,與之對(duì)應(yīng)的工具我們比較熟悉的是make,cmake。網(wǎng)上搜索ninja,說(shuō)的ninja代理make最大的優(yōu)點(diǎn)是編譯速度,使用ninja相比與make在編譯android和chrome時(shí),可以節(jié)省大量的時(shí)間。
簡(jiǎn)單使用
? 首先工程目錄有以下文件:
bar.c bar.h build.ninja foo.cbar.c中定義了一個(gè)變量和函數(shù),供foo.c調(diào)用:
// Filename: bar.c #include "bar.h" #include <stdio.h>int g_bar = 0;int run_bar() {printf("g_bar = %d\n", g_bar);return 0; }foo.c內(nèi)容為:
// Filename: foo.c #include <stdio.h> int main() {int a = 10;int b = 5;printf("ok"); }ninja編譯腳本內(nèi)容為:
# Filename: build.ninjacc = g++ cflags = -Wallrule cccommand = gcc $cflags -c $in -o $outdescription = compile .ccbuild out/bar.o: cc bar.c build out/foo.o: cc foo.c注意以上rule cc下面,command前面為兩個(gè)空格,直接使用tab鍵,測(cè)試不行
編譯方法
編譯命令為:
ninja清理命令為:
ninja -t clean代碼已上傳到github:
https://github.com/xyyangkun/t_ninja
參考:
Ninja 構(gòu)建系統(tǒng)
The Ninja build system
首頁(yè)
與50位技術(shù)專家面對(duì)面20年技術(shù)見(jiàn)證,附贈(zèng)技術(shù)全景圖總結(jié)
- 上一篇: 如何解决内网中网络被限制的问题
- 下一篇: 记录一个海思TOE的BUG