一准备工作
首先你在自己的电脑上要安装好Ubuntu,然后进行下面的工作,你只需要复制+粘贴就行了
1、安装Git工具。Android源代码采用Git工具来管理,与SVN相比,这是一种分布式的源代码管理工具,而SVN是集中式的源代码管理工具。要安装Git工具,在Ubuntu上执行以下命令即可:
USER-NAME@MACHINE-NAME:~$ sudo apt-get install git-core gnupg
2、安装Java SDK。在Ubuntu上执行以下命令:
USER-NAME@MACHINE-NAME:~$ sudo add-apt-repository ppa:ferramroberto/java
USER-NAME@MACHINE-NAME:~$ sudo apt-get update
USER-NAME@MACHINE-NAME:~$ sudo apt-get install sun-java6-jre sun-java6-plugin
USER-NAME@MACHINE-NAME:~$ sudo apt-get install sun-java6-jdk
顺便提一句,在上面第三步sudo apt-get install sun-java6-jre sun-java6-plugin时,会弹出一个对话框,这时按Tab键来切换焦点,然后按回车就行。
3、依赖的其它包。在Ubuntu上执行以下命令:
USER-NAME@MACHINE-NAME:~$ sudo apt-get install flex bison gperf libsdl-dev libesd0-dev libwxgtk2.6-dev build-essential zip curl
此处是安装了很多软件,直接将命令复制粘贴
4、调试工具。在Ubuntu上执行以下命令:
USER-NAME@MACHINE-NAME:~$ sudo apt-get install valgrind
二、源代码的下载
有很多网站都提供了源代码的下载,但是有一些镜像是不能用了,此处给出官方参考网站,如果本地的内容也不能用了时,请参考官网:
http://source.android.com/source/downloading.html
获取Android源代码
1、在当前目录下新建一个目录用来存放我们的Android目录,
mkdir Android
cd Android
mkdir bin
cd bin
curl https://dl-ssl.google.com/dl/googlesource/git-repo/repo > repo
2、建立存放Android源代码的目录source,并初始化版本
sudo chmod a+x repo
cd ..
mkdir source
cd source
../bin/repo repo init -u https://android.googlesource.com/platform/manifest
如果想要下载android4.0的分支请用命令:
../bin/repo repo init -u https://android.googlesource.com/platform/manifest -b android-4.0.1_r1
转换分支用 -b 参数。同时注意,bin和source同时位于Android目录下,是平行结构
3、之后要求输入用户名和地址,可随机输入,也可输入自己的账户
4、同步代码
../bin/repo sync
注意:此时同步代码会非常慢,可能需要几天的时间。同步时可能会出现请求连接失败,在此执行这个命令就行,这个工程文件支持断点续传。
三、Android内核下载
Anroid内核在使用命令../bin/repo sync时并不会被一起下载。如果你不需要对Android内核进行修改和移植,可以不需要这部分内容,可以从Android模拟器中提取这部分内容的镜像
在Android目录下新建一个存放内核的目录kernel,然后执行下面命令
$ git clone https://android.googlesource.com/kernel/common.git
$ git clone https://android.googlesource.com/kernel/goldfish.git
$ git clone https://android.googlesource.com/kernel/msm.git
$ git clone https://android.googlesource.com/kernel/omap.git
$ git clone https://android.googlesource.com/kernel/samsung.git
$ git clone https://android.googlesource.com/kernel/tegra.git
注意,内核不支持断点续传,同时速度要比源代码下载速度快很多
下面的文章讲解编译Android源代码
http://blog.csdn.net/zqiang_55/article/details/7199540