Mac OX 10.11 编译AOSP的master主干过程记录

下载准备

硬件要求

至少分割出100G到150G以上的硬盘空间,并设置类型为『区分大小写,可读写』类型

软件要求

1、Xcode 4.5.2版本及其以上,以及对应的Command Line Tools,一定要相互对应,并且最好从官网下载,否则后面编译的时候会出问题。我下载的是7.3.1版本。

2、JDK 1.8_45

3、python 2.7

4、git 1.7

5、更新gnu-make命令到3.8.2版本

6、从https://developers.google.com/android/nexus/blobs-preview处下载创建虚拟机类型对应的二进制文件,例如,我创建的虚拟机是Nexus 6P类型的,我需要下载对应的硬件二进制文件

下载源码

1、在外挂硬盘上创建android分区,目录/Volumes/android

2、下载repo工具

1)mkdir ~/bin

2)PATH=~/bin:$PATH

3)可以通过下载工具下载repo,下载地址:

https://storage.googleapis.com/git-repo-downloads/repo

之后,将下载的repo粘贴到~/bin目录下

4)chmod a+x ~/bin/repo

3、下载最新的初始化包,使用清华大学的镜像资源

可以通过下载工具从地址

https://mirrors.tuna.tsinghua.edu.cn/aosp-monthly/aosp-latest.tar下载。并通过解压工具解压即可。

4、检出代码

1)修改repo的配置

编辑~/bin/repo,把REPO_URL一行替换成下面的:

REPO_URL = 'https://gerrit-google.tuna.tsinghua.edu.cn/git-repo'

2)repo sync –f

编译源码

1、跳转到/Volumes/android/aosp目录

2、$ source build/envsetup.sh

3、执行lunch命令,并根据虚拟机的类型来选择lunch的参数,我的虚拟机是X86类型,我选择的是aosp_x86_64-eng

4、make –j4

出现这一行表示编译成功。


编译过程中出现的错误

1、Unsupported curl, please use a curl not based on SecureTransport

安装curl

brew install curl --with-openssl

exportPATH=$(brew --prefixcurl)/bin:$PATH

参考链接:

http://stackoverflow.com/questions/33318756/while-i-make-the-source-of-android-6-0-it-failed

2、Jack“Out of memory error”

1)在当前工作目录下(/Volumes/android/aosp),找到修改Jack的配置文件prebuilts/sdk/tools/jack-admin,在其中找到start-server函数,直接修改其启动参数,添加-Xmx参数


Mac OX 10.11 编译AOSP的master主干过程记录_第1张图片

更改为


Mac OX 10.11 编译AOSP的master主干过程记录_第2张图片

其中『-Xmx4096m』是添加的部分

2)之后删除$HOME/.jack-server文件夹及其文件夹下的内容,这里是之前启动jack-server是创建的内容

cd $HOME

sudo rm -r -f .jack-server

3)重新开始编译

3、stat: cannot read file system information for ‘%z’: No such file ordirectory

误装了coreutils

卸载:brew uninstall coreutils

参考连接:

http://stackoverflow.com/questions/28784392/building-aosp-on-mac-yosemite-and-xcode

启动模拟器

$emulator

注意,模拟器和编译版本中,选择的lunch选项一定要相互对应,否则模拟器将一直黑屏,无法启动。

最终运行成功结果


Mac OX 10.11 编译AOSP的master主干过程记录_第3张图片


Mac OX 10.11 编译AOSP的master主干过程记录_第4张图片

参考文档:

1、https://source.android.com/source/requirements.html#software-requirements官方文档

2、https://mirrors.tuna.tsinghua.edu.cn/help/AOSP/清华大学AOSP镜像源

3、https://www.topbug.net/blog/2013/04/14/install-and-use-gnu-command-line-tools-in-mac-os-x/gnu安装教程文档

4、http://www.jianshu.com/p/98e6a6d608e0Mac OX编译aosp参考文档

你可能感兴趣的:(Mac OX 10.11 编译AOSP的master主干过程记录)