Android ROM编译调试

Posted Zhang Jun

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android ROM编译调试相关的知识,希望对你有一定的参考价值。

android源码目录下的build/envsetup.sh文件,描述编译的命令

- m:       Makes from the top of the tree.
- mm:      Builds all of the modules in the current directory.
- mmm:     Builds all of the modules in the supplied directories.

要想使用这些命令,首先需要在android源码根目录执行. build/envsetup.sh脚本设置环境
m:编译所有的模块
mm:编译当前目录下的模块,当前目录下要有Android.mk文件
mmm:编译指定路径下的模块,指定路径下要有Android.mk文件

以上三个命令都可以用-B选项来重新编译所有目标文件。强制clean编译

注:
1、make:不带任何参数,用于编译整个系统,编译时间比较长
2、如果只知道目标模块的名称,则建议使用make模块名的方式编译目标模块
3、一般的编译方式都会采用增量编译,即只编译发生变化的目标文件,但有时则需要重新编译所有目标文件,那么就可以使用make -B强制编译所有的目标文件

make -j32
mm -j8
source build/envsetup.sh          	//初始化编译环境,并引入一些辅助的shell函数

lunch XXX             	//编译选项,不同的项目不同

make -j8              	//开启8个线程编译,可任选,具体根据编译服务器的核数而定

framework修改的验证

  1. 进入源码修改目录mm编译
  2. out/target/product/xx/system【framework/lib】目录下找到编译出的jar或者so
  3. 如果是jar,替换system/framework对应的jar;如果是so,替换system/lib对应的so
  4. 确保权限是644【chmod 644 file
  5. reboot【或者kill引用库的对应程序,对于jar,最好先sync一下再重启】

以上是关于Android ROM编译调试的主要内容,如果未能解决你的问题,请参考以下文章

Android ROM修改编译出的apk对应sdk版本

[Rom]如何用Android源码生成签名文件

如何自己编译android系统并制作刷机包

Android 系统开发CyanogenMod 13.0 源码下载 编译 ROM 制作 ( 手机平台 : 小米4 | 编译平台 : Ubuntu 14.04 LTS 虚拟机)

如何编译一个可以烧写进手机中的ROM,Android安卓开发者

怎么编译Chrome for Android