Ubuntu 14.04编译AOSP for Nexus/Pixel

前言

虽说几年前博主在一家公司做机顶盒的时候总是需要编译Android源码,但是那时还没有手中的爱机:Nexus 6,又名shamu。今天我要为它刷入一个自己编译的Rom。拿起键盘就是干。

笔者注:AOSP:Android Open Source Project,安卓开源项目

准备

  • Ubuntu 14.04+
  • OpenJDK/JDK
  • Nexus/Pixel手机一部

假设你已经有了一个较新的Ubuntu系统和一部谷歌亲儿子手机,下文将从安装jdk开始。

本文作者MichaelX,博客地址:http://blog.csdn.net/xiong_it ,转载请注明出处。


AOSP编译环境搭建

安装OpenJDK

警告:不要使用oracle jdk来编译较新(API 21+/Android 5.0及以上)的AOSP,会在准备编译工作make clobber时出现错误提示.

Checking build tools versions...
*************************************************************
You asked for an OpenJDK based build but your version is java version "1.8.0_121" Java(TM) SE Runtime Environment(build 1.8.0_121-b13)Java HotSpot (TM)64 bit Server VM(build 25.121-b13), mixed mode).
*************************************************************
build/core/main.mk:230: *** stop.

关于JDK版本的选择:根据你想编译的Android版本来决定

  • AOSP最新源码: OpenJDK 8
  • Android 5.x (Lollipop) - Android 6.0 (Marshmallow):OpenJDK 7
  • Android 2.3.x (Gingerbread) - Android 4.4.x(KitKat):Java JDK 6
  • Android 1.5 (Cupcake) - Android 2.2.x (Froyo): Java JDK 5

博主想要编译的是Android 7.0,所以需要使用是OpenJDK 8。

博主是用的Ubuntu 14.04 LTS,可采取安装deb包或者添加ppa两种方式安装OpenOJDK 8:
1. OpenJDK deb包下载:OpenJDK 8 on github
2. 添加ppa方式安装OpenJDK

$ sudo add-apt-repository ppa:openjdk-r/ppa
$ sudo apt-get update

$ sudo apt-get install openjdk-8-jdk

$ sudo update-alternatives --config java
$ sudo update-alternatives --config javac

假如你Ubuntu是15.04或者更新的系统,可直接运行下列命令进行OpenJDK 8安装

$ sudo apt-get update
$ sudo apt-get install openjdk-8-jdk

Linux使用下列命令查看机器中所有jdk版本

$ michaelx@michaelx-ThinkPad:~/AOSP_NBD91Z$ update-java-alternatives -l
// 打印出下面已安装的jdk版本
java-1.8.0-openjdk-amd64 1069 /usr/lib/jvm/java-1.8.0-openjdk-amd64

Linux设置默认JDK命令

// 设置默认为openjdk8,此处必须选用OpenJDK8
$ sudo update-java-alternatives -s java-1.8.0-openjdk-amd64
// 设置默认为oracle jdk8
$ sudo update-java-alternatives -s java-8-oracle
// 设置默认为oracle jdk7
$ sudo update-java-alternatives -s java-7-oracle

Ubuntu 14.04设置默认OpenJDK 8时出现一处警告提示:

update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-8-openjdk-amd64/jre/lib/amd64/IcedTeaPlugin.so

该提示无需理会,可直接忽略。

查看Java版本,出现以下提示,说明jdk环境已经ok。

$ java -version

openjdk version "1.8.0_111"
OpenJDK Runtime Environment (build 1.8.0_111-
  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值