Android经常使用的一些make命令(转载)--不错

原文网址:http://blog.sina.com.cn/s/blog_abc7e49a01011y0n.htmlhtml

1.make -jXX
  XX表示数字,这个命令将编译Android系统并生成镜像,XX表示能够使用到的CPU核数,这在配置好的电脑上特别有用,公司的16核ubuntu服务器执行make -j16只要不到20分钟,而双核PC上须要4个小时!

2.
make snod
  
这条命令将从新生成镜像,消耗的时间不多,相似WinCE的makeimg过程,若是你修改了一些数据文件(如音乐、视频)等文件时比较有用。

3.make cts
  这条命令将编译CTS套机,编译出的结果放在out目录对应版的data/app目录下面。CTS测试时有用

4.make installclean
  
这条命令清除out目录下对应板文件夹中的内容,也就是至关于make clean,一般若是改变了一些数据文件(如去掉)、最好执行如下make installclean,不然残留在out目录下的还会被打包进去。

5.mm/mm -B
  
开发调试中最喜欢这条命令了,在修改了的目录下执行这条命令,就能智能地进行编译,输出的文件在经过adb推送到目标机,能够很方便地调试。

6.make sdk
  
这条命令能够生成可发布的SDK,目前还没试过,听说须要JDK1.5

7.make Setting
  
能够单独编译setting这个模块,目前还没试,猜测是否是能够单独编译Email、Music这些模块

8.make bootimage
  
用这条命令能够生成boot.img,这个镜像文件中包含Linux Kernel,Ram disk,生成的boot.img只能经过fastboot进行烧写,这在只修改了Linux内核的时候有用
node

 

 

Android比较重要的三个img文件:ubuntu

 

  • make systemimage - system.img
  • make userdataimage - userdata.img
  • make ramdisk - ramdisk.img
  • make snod - 快速打包system.img (with this command, it will build a new system.img very quickly. well, you cannot use “make snod” for all the situations. it would not check the dependences. if you change some code in the framework which will effect other applications)

 

 

 

因為
system.img 是 從 out/target/product/xxxx/system 作出來的。
若是改了 這個 folder 的內容,想要从新產生 system.img。不要管 system folde 裡面的 file 的 dependency,能够用 snod 這個 target:服务器

 

  • make snod

 

定義在 build/core/Makefile 能够看到 snod 這個 target:
(有說明是: make system.img ignoring depencies)app

 

.PHONY: systemimage-nodeps snod
systemimage-nodeps snod: $(filter-out systemimage-nodeps snod,$(MAKECMDGOALS)) \
| $(INTERNAL_MKUSERFS)
@echo "make $@: ignoring dependencies"
$(call build-systemimage-target,$(INSTALLED_SYSTEMIMAGE))
$(hide) $(call assert-max-image-size,$(INSTALLED_SYSTEMIMAGE),$(BOARD_SYSTEMIMAGE_PARTITION_SIZE),yaffs)ide

 

Ref:
http://hi.baidu.com/kyan/blog/item/df7ea8d346f5c839960a163c.html
http://r40eubuntu.blogspot.com/2010/10/systemimg.html测试

相关文章
相关标签/搜索