第四章读书笔记
下载、编译和测试android源代码
配置android源代码下载环境
1,创建一个用于存放下载脚本文件(repo)的目录(可将该脚本文件一放到任何目录中)
2,下载repo脚本文件(用于下载android源代码)
Repo文件实际上是用Python脚本对git的封装,主要是为了简化下载android源代码的操作。
3,创建用于存放android源代码的目录
4,初始化
5,开始下载android源代码
下载android源代码中的一部分 有两种方法:
方法1,使用repo sync命令
<android源代码目录>/bootable/recovery(执行命令前仍然需要使用repo init初始化)
获取工程名:当执行repo init命令初始化的过程中,会在当前目录生成一个隐藏目录.repo。在该目录中,manifest.xml 该文件包含了当前android源代码版本库中包含的所有工程的列表,其中每一行表示一个工程,其中path属性表示工程的路径,name属性表示工程名。repo sync命令后跟的是name属性的值
方法2,使用git clone命令
以上二者区别:repo sync会在当前目录生成一个隐藏目录.repo,存放了源代码所需的全部信息,且下载指定工程的源代码会按照实际的路径存放。而git clone只会建立工程目录,并不会建立层次路径结构
编译android源代码
1,初始化编译环境 #cource build/envsetup.sh
mm命令必须进入指定工程的目录进行编译,mmm命令可以源代码目录结构中的任何一级目录编译任意指定的工程,只需要指定工程路径即可。
2,选择目标
3,编译android源代码
# make -jn 使用多个CPU内核进行编译,提高编译效率
Out目录中
Host目录只要是一些库和工具,target目录中包含common和product
下载和编译Linux内核源代码
安装android内核的编译环境
配置Linux内核源代码根目录下的Makefile文件
ARCH ?= arm
CROSS_COMPILE?= arm-none-linux-gnueabi-
ARCH变量表示将Linux源代码编译成可在arm架构上运行的Linux内核。
CROSS_COMPILE变量表示交叉编译器的前缀。
http://www.cnblogs.com/875825a/