查看: 2157|回复: 0

[Android教程] Ubantu16.04进行Android 8.0源码编译

发表于 2018-2-20 08:00:03

分为4个流程

  1. 源码下载
  2. 构建编译环境
  3. 编译源码
  4. 运行
源码下载 安装git并且配置
  1. //安装git
  2. sudo apt-get install git
  3. //配置git名称和邮箱
  4. git config --global user.name "your name"
  5. git config --global user.email "XXX@XXX.com"
复制代码
创建repo的bin目录和源码目录
  1. 创建repo的bin目录

    1. midir ~/bin
    复制代码
  2. 创建源码目录

    1. midir ~/source
    复制代码
安装repo

由于在采用网上常见的安装repo方法时,出现了Cannot get http://gerrit.googlesource.com/git-repo/clone.bundle异常,通过网上搜索,原因是repo需要更新自身项目时,连接不上项目本身的git仓库,在此,采取了手动拉取repo最新项目的方式

  1. 从git上拉取repo项目

    1. git clone https://gerrit-googlesource.lug.ustc.edu.cn/git-repo
    复制代码
  2. 将git-repo里面的repo文件复制到~/bin目录

  3. 在~/source目录新建.repo文件夹,把git-repo重命名为repo复制到.repo目录下

  4. 将~/bin/repo 添加到环境变量,并赋予权限

    1. //赋予权限
    2. chmod a+x ~/bin/repo
    3. //添加到环境变量
    4. 将export REPO=~/bin 添加到~/.bash_profile
    5. ///让配置文件生效
    6. source ~/.bash_profile
    复制代码
下载源码 初始化仓库

cd到~/source目录,执行以下命令

  1. repo init -u https://aosp.tuna.tsinghua.edu.cn/platform/manifest
复制代码

或者这个命令

  1. repo init -u git://aosp.tuna.tsinghua.edu.cn/aosp/platform/manifest
复制代码

两者实现的效果一致,仅仅只是协议不同.
如果执行该命令的过程中,如果提示无法连接到 gerrit.googlesource.com,那么我们只需要编辑 ~/bin/repo文件,找到REPO_URL这一行,然后将其内容修改为:

REPO_URL = 'https://gerrit-google.tuna.tsinghua.edu.cn/git-repo'
然后重新执行上述命令即可.

补充说明
不带参数的manifest命令用于获取master上最新的代码,但是可以通过-b参数指定获取某个特定的android版本,比如我们想要获取android-4.0.1_r1分支,那么命令如下:

repo init -u https://aosp.tuna.tsinghua.edu.cn/platform/manifest -b android-4.0.1_r1
(AOSP项目当前所有的分支列表参看:分支列表)

同步代码

命令如下

  1. repo sync
复制代码


回复

使用道具 举报