building Android open source project

1.       编译环境的搭建。

首先是选择操作系统。强烈推荐64 Ubuntu(我在 10.04.4 LTS 上编译成功)。

理由如下,最开始尝试用32arch编译,过程苦不堪言,尝试了一天之后放弃了,需要改太多地方。然后图省事换成32位的ubuntu(刚好有块安装盘),按照官方的步骤apt了一个又一个的包。编译的途中开始抱怨x86_64-linux-gcc only run on 64-bit linux 这个错误是一切折腾的开始。动手改makefile,能编译发现不能链接,这个包能链接发现下个又不能链接。。。狠狠google了一番,发现google2.3开始就放弃了32位的开发环境。鼓励大家用64位的os编译android。刚开始还有不少人在hack代码,使之能在32位下使用。现在已经是4.1的版本了,还在32位下坚持的人应该不多了吧。

操作系统定下来之后,接下来就顺了。

根据官方的教程安装以下包

$ sudo apt-get install git-core gnupg flex bison gperf build-essential \
  zip curl zlib1g-dev libc6-dev lib32ncurses5-dev ia32-libs \
  x11proto-core-dev libx11-dev lib32readline5-dev lib32z-dev \
  libgl1-mesa-dev g++-multilib mingw32 tofrodos python-markdown \
  libxml2-utils xsltproc

sun-java6-jdk (官网上给的那个源已失效)

$ sudo add-apt-repository "deb http://us.archive.ubuntu.com/ubuntu/ hardy multiverse"
$ sudo apt-get update
$ sudo apt-get install sun-java6-jdk

至于ccache这种加速的东西,我推荐成功编译之后再使用,刚开始还是单纯的编译源码,省的配置错了导致莫名其妙的错误。

2.下载源码

下载repo工具

curl https://dl-ssl.google.com/dl/googlesource/git-repo/repo > repo

repo init -u https://android.googlesource.com/platform/manifest

(推荐第一次下载的时候加上mirror参数,好处多多,可以方便的共享给其他同学用,可以方便的供以后各种需求,而不用再次忍受从google服务器上下载的龟爬网速)

Repo sync 抓源码

(如果加了mirror参数,此时得到的是服务器上的完全镜像,不能直接使用。需要换个目录再次repo)

3. build and run

$ source build/envsetup.sh

$ lunch full-eng
$ make –j4 
#######some hours later#######
$emulator 

如果执行emulator提示找不到,需要手动设置一下环境变量,最简单的方法就是执行一遍 source build/envsetup.sh && lunch full-eng

 enjoy the open-source!

 

 

 

2 thoughts on “building Android open source project

Leave a Reply

Your email address will not be published. Required fields are marked *

*


*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>