Ubuntu 12.04(64bit) Android 4.4编译环境搭载

这篇文章主要记录了我是如何搭建Android编译环境,以及搭建当中遇到的问题以及解决方法。搭建环境依照官网进行,整个搭建环境分为两步:

1. 安装JDK

2. 安装相对应的库以及软件

1、安装JDK

官网上给出的办法是使用apt进行jdk的安装

$ sudo add-apt-repository "deb http://archive.canonical.com/ lucid partner"
$ sudo apt-get update
$ sudo apt-get install sun-java6-jdk

但是我在按照这个方法进行安装是apt提示无法找到jdk安装包。 在更换了好几个source后都无法下载jdk。因此只能考虑手动安装。

1. 首先在Orecal官网下载JDK:

http://www.oracle.com/technetwork/java/javase/downloads/java-archive-downloads-javase6-419409.html

需要注意的是,现在官方网站上最新的版本的JDK7, 但是这个这个版本是不能用于Android的编译的,一定要去下载JDK6. 希望看到的朋友不要在走我的弯路。

2. 创建jvm文件夹

sudo mkdir /usr/lib/jvm

3. 安装JDK6

sudo cp jdk-6u45-linux-x64.bin /usr/lib/jvm/
sudo chmod +x jdk-6u45-linux-x64.bin
sudo ./jdk-6u45-linux-x64.bin

4. 设置环境变量

sudo mv jdk1.6.0_45/ jdk6
export JAVA_HOME=/usr/lib/jvm/jdk6
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

5. 使能环境变量

source ~/.bashrc

6. 设置JDK6为系统默认JDK

因为在ubuntu中默认JDK可能是OpenJDK,这里我们设置JDK6为我们默认的JDK

sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/jdk6/bin/java 300
sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/jdk6/bin/javac 300
sudo update-alternatives --config java

7. 至此JDK就安装好了,现在就可以在shell中查看Java版本

java -version

 

2、安装相对应的库以及软件

根据官网上的指示我们需要安装如下软件包和lib

$ sudo apt-get install git gnupg flex bison gperf build-essential   zip curl libc6-dev libncurses5-dev:i386 x11proto-core-dev   libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-glx:i386   libgl1-mesa-dev g++-multilib mingw32 tofrodos   python-markdown libxml2-utils xsltproc zlib1g-dev:i386
$ sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/lib/i386-linux-gnu/libGL.so

但是在安装过程中遇到了如下错误:

Errors were encountered while processing:

libc6-dev:i386
 
E: Sub-process /usr/bin/dpkg returned an error code (1)

解决方法如下:

$ sudo apt-get install linux-libc-dev:i386
$ sudo apt-get install libc6-dev:i386

至此我们的编译环境就算搭建完毕了,至少在我的电脑上是这样的,下面我们就可一开始下载Android代码来编译了。

 

Refs:

http://source.android.com/source/initializing.html

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。