Android2.2源码编译
环境:--Ubuntu10.04 (X86) + Android2.2 + JDK1.6
注意:官方声明,32位系统下JDK必须用1.5---这是因为编译android api docs 需要1.5。要用JDK1.6必须用64位系统---为什么是64目前不得而知。要是想一次成功,最好还是按照官方说的用JDK1.5(当然你用64位linux就更方便了),这样的话基本没什么大问题。
1)安装必要的软件环境
$ sudo apt-get install git-core gnupg sun-java5-jdk flex bison gperf libsdl-dev libesd0-dev libwxgtk2.6-dev build-essential zip curl libncurses5-dev zlib1g-dev
方推荐的就是上面这些,如果在编译过程中发现某些命令找不到,就apt-get它。可能需要的包还有:
1 $ sudo apt-get install make2 $ sudo apt-get install gcc3 $ sudo apt-get install g++4 $ sudo apt-get install libc6-dev5 $ sudo apt-get install patch6 $ sudo apt-get install texinfo7 $ sudo apt-get install zlib1g-dev8 $ sudo apt-get install valgrind9 $ sudo apt-get install Python2.5(或者更高版本)
注意:
1.官方文档说如果用sun-java6-jdk会出问题,得要用sun-java5- jdk。
2.经测试发现,如果仅仅make(make不包括make sdk),用sun-java6-jdk是没有问题的。而make sdk,就会有问题,严格来说是在make doc出问题,它需要的javadoc版本为1.5。因此,我们安装完sun-java6-jdk后最好再安装sun-java5-jdk,或者只安装sun-java5-jdk。这里sun-java6- jdk和sun-java5-jdk都安装,并只修改javadoc.1.gz和javadoc。因为只有这两个是make sdk用到的。这样的话,除了javadoc工具是用1.5版本,其它均用1.6版本:1 $ sudo apt-get install sun-java6-jdk
修改javadoc的link
1 $ cd /etc/alternatives
2 $ sudo rm javadoc.1.gz
3 $ sudo ln -s /usr/lib/jvm/java-1.5.0-sun/man/man1/javadoc.1.gz javadoc.1.gz
4 $ sudo rm javadoc
5 $ sudo ln -s /usr/lib/jvm/java-1.5.0-sun/bin/javadoc javadoc
当碰到JDK1.6在32位系统下的检查问题时,可以通过一下方法解决