容器 摆脱主机环境限制,随心所欲编译Android源码

TinkerS OSC开源社区 昨天

使用docker编译aosp源码

google官方推荐的安卓编译源码为14.04,由于目前的工作环境为macosx环境或者高版本的ubuntu环境,直接在本机编译会有很多问题,不过借助docker这个强大的工具可解决这个烦恼

安装docker

google搜索安装方法即可

docker更换国内镜像源

为了加速docker镜像的拉取,可以设置国内镜像源,例如设置成网易的镜像源方法如下:

  • 创建 /etc/docker 目录

sudo mkdir -p /etc/docker

  • 在 /etc/docker 目录下创建 daemon.json 文件,写入以下内容

{    "registry-mirrors": ["http://hub-mirror.c.163.com"]}

  • 重启docker服务

sudo systemctl daemon-reloadsudo systemctl restart docker

创建编译镜像

由于aosp源码推荐在ubuntu 14.04版本上编译,所以我们基于14.04来创建镜像。这里准备使用5.1.1版本的源码,所以需要安装jdk7。

构建镜像的细节详见 Dockerfile。

使用如下命令创建镜像

docker build -t aosp-build:1.0.0 .

查看创建成功的镜像

使用镜像编译源码

  1. 下载aosp源码 推荐去清华镜像站下载打包好的源码即可,也可以使用repo下载指定版本,具体详见网站文档。

  2. 假设aosp源码下载路径为 /home/user/aosp,使用aosp-build镜像创建容器,并挂载aosp源码路径

docker run -itd --name aosp-build -v /home/user/aosp:/home/aosp aosp-build:1.0.0docker exec -it aosp-build /bin/bash

  1. 进入 /home/rom 目录,直接编译源码即可

. build/envsetup.shlunchmake -j8
(0)

相关推荐