首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > Android >

Android源码开发环境的筹建

2012-08-29 
Android源码开发环境的搭建一、 配置环境 1. 磁盘需要6G以上剩余空间 2. Linux系统 Ubuntu 6.06以上版本,我

Android源码开发环境的搭建

一、 配置环境 1. 磁盘需要6G以上剩余空间 2. Linux系统 Ubuntu 6.06以上版本,我用的是buntu 8.04,具体请见下篇文档《ubuntu系统的使用》


一、
配置环境

1.
磁盘
需要6G以上剩余空间

2.
Linux系统

Ubuntu 6.06以上版本,我用的是buntu 8.04,具体请见下篇文档《ubuntu系统的使用》

3.
Git工具(Git 1.5.4以上版本)
它是类似CVS的版本管理工具,如果你的代码不用从网上下载,而是从别人处复制,则无需此工具
$ sudo apt-get install git-core gnupg

4.
Java环境(JDK 5.0 update12以上版本)
$ sudo apt-get install sun-java6-jdk
具体安装请见上篇文档《Android环境的搭建》


Python (Python 2.4以上版本)
从http://www.python.org/download/下载2.4以上版本
$ tar xvzf python-2.4.5.tgz
$ cd python-2.4.5/
$ ./configure
$ make; make install

6.
依赖的deb包
$ sudo apt-get install flex bison gperf libsdl-dev libesd0-dev libwxgtk2.6-dev build-essential zip curl
其中flex bison build-essential zip curl可以从光盘安装
其余gperf libsdl-dev libesd0-dev libwxgtk2.6-dev需要从网上安装,它们还依赖一些安装包,所以要用apt-get下载,不要直接下deb包 安装

7.
调试工具
$ sudo apt-get install valgrind

二、
下载及编译运行android源码

1.
下载安装脚本
$ wget http://android.git.kernel.org/repo
$ chmod 777 repo
$ cp repo /bin/2.
用安装脚本下载源码
$ mkdir android_code
$ cd android_code
$ repo init -u git://android.git.kernel.org/platform/manifest.git
$ repo sync
以上命令是下载最新版本,也可以下载其它版本
如我买的 手机,在设置->关于手机->固件版本中看到是1.5,所以下载1.5版本,方法如下
$ repo init -u git://android.git.kernel.org/platform/manifest.git -b android-1.5r3
$ repo sync
// 此 后会长时间下载 3.
编译1)
正常编译
$ cd android_code
$ make
映像编译成功后会在目录 android_code/src/out/target/product/generic 下产生一些image文件:ramdisk.img system.img userdata.img2)
可能出现的问题及解决方法1.
make若提示找不到-lncurses,则需要做以下链接
ln –s /lib/libncurses.so.5 /lib/libncurses.somake若提示找不到run-java-tool,则需要设置java的安装路径
$ export ANDROID_JAVA_HOME=$JAVA_HOME


3.
若提提示找不到zlib.h, 则运行如下命令安装zlib开发包
$ sudo apt-get install zlib1g-dev

4.
下了一个最新版本后显示说只能使用java-1.5版本,于是从1.6版本降回1.5
$ sudo apt-get install sun-java5-jdk flex
$ sudo update-java-alternatives -s java-1.5.0-sun







5.
如果报错 “compression requires the missing zlib module” 可能是python找不到zlib库
这时需要先安装zlib库, 然后重编python, 并取代当前版本python
$ sudo apt-get install zlib1g-dev
$ python2.6 –version
可看到当 前版本, 下载当前版本, 重新编译安装
$ tar xvzf python-2.6.2.tgz
$ cd python-2.6.2/
$ ./configure –prefix=/usr/local
$ make; make install

3)
编译sdk
此时SDK产生于此目录下:android_code/out/host/linux-x86/sdk/
此包如同下载的sdk包,可供eclipse使 用,注意把它移动其它位置使用,否则一编译其它应用,它就被删除掉了


4)
编译不同Android硬件平台对应版本
需要在make前先针对设备进行设置,形如:
$ choosecombo 1 1 8 3
使用不同参数,编译结果存存储的目录不同
默认包生成目录:android_code/out/target/product/qsd8250_surf/system/app/*.apk
以上选项包生成目录:android_code/out/target/product/generic/system/app/*.apk

4.
运行

1)
运行普通的虚拟器emulator
emulator的路径 是:
/home/xieyan/bin/android_code/out/host/linux-x86/bin/emulator
设置环境变量export PATH=$PATH:android_src/out/host/linux-x86/bin
$ . build/envsetup.sh
$ partner_setup
$ emulator

2)
指定img运行
$ export

ANDROID_PRODUCT_OUT=/home/xieyan/bin/android_code/out/target/product/generic
$ emulator -image system.img -data userdata.img -ramdisk ramdisk.img常用的源码文件


1.
frameworks/base/core/java/android/widget/下边
Android系统控件的实现

2.
package/apps
普通应用程序的实现

3.
out/target/product/generic/system/apps/*.apk
安装包生成的位置

四、
参考

1.
官方网站的安装说明
http://source.android.com/download

热点排行