1.source ./build/envsetup.sh //使用脚本初始化环境
2.lunch xx //使用 lunch 选择要编译的目标,lunch 特定的分支
3.全编:make -j8 2>&1|tee build.log
4.单编:mm frameworks/base/
另外m的含义:
- m:
- mm:
- mmm
m,显然是make
mm ,在编译单一模块的时候可以在当前目录下使用,如果当前路径是代码树顶层,则mm相当于make。如果是深层,测mm相当于ONE_SHOT_MAKEFILE=$M make -C
T
f
i
l
e
s
T files
Tfiles@
M
是
f
i
n
d
m
a
k
e
f
i
l
e
发
现
的
A
n
d
r
o
i
d
.
m
k
,
M是findmakefile发现的Android.mk,
M是findmakefile发现的Android.mk,T是代码树顶层路径,files是main.mk中定义的phony goal,就是完成$M对应目录范围内,所有android需编译的modules以及辅助说明txt文件。
mmm 可以在android目录下使用,给定package的路径,则mm会make相应的package。
例如,mmm package/apps/Calculator