如何编译Android源代码

0.准备操作系统

如果需要编译的版本<=2.2 可以用32位的linux,如果是>2.2的版本,要用64位的linux

推荐Ubuntu 

1. 安装需要的工具

参考这个链接:http://source.android.com/source/download.html 

点Source > Getting the source

 

你可能会纠结于使用java1.5还是1.6, 当你想编译Android比较早的版本时,会发现其实java1.5已经不被支持了,所以你在Ubuntu下直接apt-get是找不到的,这时你需要参考这个链接:http://blog.enea.com/Blog/bid/32050/Ubuntu-9-10-Java-5-and-the-Android-Open-Source-Project 


当你的系统中安装了多个版本的java时,你可以通过 sudo update-alternatives --config java 来选择你需要用的java版本。

 

2.Android的编译主要是用git,当你会看到google主要是用的工具叫做repo,这个其实是个python脚本,你需要手动下载它:

下载repo脚本并使其可执行:

1 $ curl http://android.git.kernel.org/repo >~/bin/repo

2 $ chmod a+x ~/bin/repo

4)初始化repo

repo是android对git的一个封装,简化了一些git的操作。 

 

下一步就是使用repo去初始化代码,和下载代码:repo init -u git://android.git.kernel.org/platform/manifest.git 

这样默认是下载的代码树中的master,如果需要别的分支可以参考 http://source.android.com/source/download.html 

这里请注意,默认下载的时候是不包含kernel的源代码的,如果你需要kernel的源代码,你可以参考这个链接:

http://elinux.org/Android_Kernel_Download 

 

3.一些奇怪的问题:

 我安装的是32bit的Ubuntu,在编译主干的代码时,报错说我需要64位的系统,还说需要java1.6。

你可以这样解决:sudo apt-get install sun-java1.6-sdk

然后给自己修改源代码,具体方法可以参考:

http://groups.google.com/group/android-platform/browse_thread/thread/b0bb991131589363 

 

4.make 

 

posted on 2011-02-07 13:52  刘誉儿  阅读(3628)  评论(0编辑  收藏  举报