Sierra下编译Aosp

来源:互联网 发布:管家婆软件工贸版 编辑:程序博客网 时间:2024/06/05 15:14

本文是针对 编译Aosp 的新手引导(我也是新手)
我编译的 AOSP 版本是 6.0.1 , 目的是为了产生一个可以debug 系统代码的Rom

以下都是针对AOSP 6.0.1 作出描述

大概有以下几个步骤:

  1. 准备梯子以及 proxychain(terminal 命令要用到,可能有些地方命好不用。。)
  2. 配置环境(Sierra 上Sdk 的问题)
  3. 下载AOSP 源码(几十个G,没个镜像怎么玩。。)
  4. 编译AOSP(这个真心要台好机器)

准备梯子以及 proxychain

梯子的话如果用的是 shadowsocks 之类的 socks5 协议就要用到 proxychain。如果用的是VPN就不需要了。
proxychain 是为terminal 执行命令做代理的工具,Sierra 上需要禁用 System Integrity Protection 才可用。

  • Home Brew 安装,方便ProxyChain 安装
  • proxychain 安装教程
  • 白苹果禁用System Integrity Protection参考教程
  • 黑苹果禁用System Integrity Protection,设置 Rt Variables->CsrActiveConfig 为 0x67 即可(Clover)

配置环境

首先参考 Source Android 配置编译环境,首先按照官方教程配置好环境过程中可能会遇到以下几个问题:

  1. MacPorts 安装问题:如果卡在脚本执行部分可以直接强关了安装程序,在terminal 中执行 sudo prot selfupdate,此时配合 proxychain 速度会好很多
  2. Mac sdk 问题:6.0.1 的版本支持的 mac sdk 版本在 mac_version.mk中可以找到,最低版本10.6 最高版本10.9。

    首先需要将
    /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Info.plist 中的 MinimumSDKVersion 改为 10.9
    到这个地址下载 MacOSX10.9.sdk.tar.xz 解压并并连接到
    /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs 目录下。
    指令如下(假设已安装HomeBrew):

    1. brew install wget (速度太慢就加上 proxychain4)
    2. mkdir ~/MacSdks && cd ~/MacSdks
    3. wget https://github.com/phracker/MacOSX-SDKs/releases/download/MacOSX10.11.sdk/MacOSX10.9.sdk.tar.xz (速度太慢就加上 proxychain4)
      地址: https://github.com/phracker/MacOSX-SDKs/releases/download/MacOSX10.11.sdk/MacOSX10.9.sdk.tar.xz
    4. tar vxf MacOSX10.9.sdk.tar.xz
    5. ln -s ~/MacSdks/MacOSX10.9.sdk \
      /Applications/Xcode.app/Contents/Developer/Platforms\
      /MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk

下载AOSP 源码

清华大学开源软件镜像站 这个是国内镜像,速度很好建议人少的时候下,有时候中间可能会出错。里面也有相关教程。

如果是像我一样为了给 Nexus 5 (hammerhead)编译Rom 还需要到 Driver Binaries for Nexus and Pixel Devices 下载相关驱动。用 tar解压出几个 sh文件,将其移动到 AOSP 根目录并一一执行即可

编译AOSP

至此所有的准备工作都完成了。下面开始编译吧。
我编译用的是 6700k 的cpu,自己装的黑苹果。如果只是为了编译 AOSP 简单起见还是 Ubuntu 方便。
编译的时间大概就是我写这篇文章的时间。


0 0
原创粉丝点击