Chinaunix首页 | 论坛 | 博客
  • 博客访问: 591621
  • 博文数量: 107
  • 博客积分: 713
  • 博客等级: 上士
  • 技术积分: 1050
  • 用 户 组: 普通用户
  • 注册时间: 2011-07-05 00:14
个人简介

呵呵

文章分类

全部博文(107)

文章存档

2015年(2)

2014年(17)

2013年(29)

2012年(52)

2011年(7)

分类: LINUX

2012-09-24 22:24:28

一、安装必要的工具
apt-get install git-core gnupg flex  bison gperf libsdl-dev libesd0-dev build-essential zip curl libncurses5-dev zlib1g-dev


二、下载java jdk
1、在/etc/apt/sources.list上加上如下几行源地址(ubuntu10.04没有提供jdk的源):

deb lucid partner
deb hardy main multiverse
deb hardy-updates main multiverse

2、然后执行apt-get update

3、然后即可通过apt-get install sun-java5-jdk/sun-java6-jdk安装

4、设置环境变量
gedit ~/.bashrc
加入
JAVA_HOME=/usr/lib/jvm/java-1.5.0-sun 
JRE_HOME=${JAVA_HOME}/jre 
export ANDROID_JAVA_HOME=${JAVA_HOME} 
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATH 
export JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin 
export JAVA_HOME; 
export JRE_HOME; 
export CLASSPATH; 
HOME_BIN=~/bin/ 
export PATH=${PATH}:${JAVA_PATH}:${JRE_PATH}:${HOME_BIN};

 5、source ~/.bashrc
三、安装编译工具
在linux环境下开发android时必须安装编译工具,例如git和repo。其中repo的作用是更新android源码,是对调用git的封装工具。安装repo的流程如下。
cd ~
makedir bin
curl >~/bin/repo
chmod a+x ~/bin/repo
四、android源码获取和内核源码
在上详细介绍了获取android源码和获取内核源码的的方法,这里不再罗嗦。

1、对android源码进行编译

执行make
(如果要增加其他功能,可以修改build/target/product/路径下相应的.mk文件。比如要增加中文输入法,要修改该目录下的 generic.mk,在PRODUCT_PACKAGES中加入PinyinIME,然后保存并退出。)
编译完成后会在out/target/product/generic/目录下生成一些.img镜像文件,比如system.img,userdata.img,ramdisk.img等。
2、编译sdk
执行make PRODUCT-sdk-sdk或make sdk
        编译完成后会在out/host/linux-x86/sdk/目录下生成android-sdk_eng.xxx_linux-x86.zip和android-sdk_eng.xxx_linux-x86两个目录ndroid-sdk_eng.xxx_linux-x86目录包含了一些很重要的tools工具,所以建议把生成的sdk备份一些,否则在编译单独模块的时候会被清除了。
3、编译adt
编译adt需要eclipse的支持,可以直接从网上下载eclipse和adt,eclipse建议下载scp版本的,
解压后在profile中指定eclipse-RCP-xx-linux-gtk路径,然后编译adt。
或者直接编译adt,系统会自动下载eclipse,前提是必须有网络(我用的是这种方法)。
编译sdk
sdk/eclipse/scripts/build_server.sh  /home/xxx/adt(指定生成adt的路径)
4、编译内核
内核源码下载完后,在目录下看不到具体的目录,这时需要在目录下输入git branch -a 查看分支,然后选择自己想要的一个分支,然后输入git checkout xxxx(分支的完整目录)选择需要的分支。
内核的配置config采用/arch/arm/configs/xxx目录下的配置。


五、运行android系统

在生成的sdk的子目录tools下执行如下命令

./mksdcard 512M sdcard.img  //创建一个512M的sd卡

./android create avd --target 1 --name eyarin --sdcard sdcard.img//创建一个avd,并指定target为1,名字为eyarin,并且建在第一步创建的sd卡上。当提示是否需要自定义avd时,选择no。

./android list avd    / /显示我们创建的avd

./emulator -avd eyarin //运行模拟器,这里只能建议sdk是否正确

模拟器关了,验证img是否正确

./emulator -avd eyarin -kernel  xxx/zImage

./emulator -avd eyarin -system xxx/system.img

./emulator -avd eyarin -data xxx/userdata.img

./emulator -avd eyarin -ramdisk xxx/ramdisk.img

阅读(998) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~