第四章读书笔记

下载、编译和测试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目录中包含commonproduct

下载和编译Linux内核源代码

安装android内核的编译环境

配置Linux内核源代码根目录下的Makefile文件

ARCH ?= arm

CROSS_COMPILE?= arm-none-linux-gnueabi-

ARCH变量表示将Linux源代码编译成可在arm架构上运行的Linux内核。

CROSS_COMPILE变量表示交叉编译器的前缀。

http://www.cnblogs.com/875825a/

原文地址:https://www.cnblogs.com/875825a/p/5416599.html