设为首页 加入收藏

TOP

Ubuntu 10.10下编译Android 2.2平台
2014-11-24 11:33:31 来源: 作者: 【 】 浏览:0
Tags:Ubuntu 10.10 编译 Android 2.2 平台


0 说明


Android2.2platformkernel是分别的项目,要分别下载编译。本文是Ubuntu10.10 环境下Android2.2.2_r1平台(包含SDK)的编译。



读者:希望深入Android底层开发者,如果只是ANDROID应用开发者,不用如此麻烦,直接下载现成的SDK以及其他相应工具即可。



一、环境准备



1.1. 安装Utunbu 10.10


在写此文时,ubuntu已经有更新的安装包发布,笔者没有更新。



1.2. 工具下载安装



1.3. SUN jdk 5.0下载安装


android2.2要求用SUN JDK5,而ubuntu10.10里安装的是JDK6,需要重新安装5.0jdk。用apt-get方法(1.3.1)简单易操作,可是笔者试着更新了很多源,但是都连接不上,所以用了直接下载安装的方法(1.3.2)。这里只是把apt-get的方法放在这里,并没有验证。



1.3.1 apt-get install安装JDK5


1) 添加JDK5的更新源,打开source.list


2) source.list里把下面内容追加到文档最后面:


deb http://us.archive.ubuntu.com/ubuntu/ jaunty multiverse


deb-src http://us.archive.ubuntu.com/ubuntu/ jaunty multiverse


deb http://us.archive.ubuntu.com/ubuntu/ jaunty-updates multiverse


deb-src http://us.archive.ubuntu.com/ubuntu/ jaunty-updates multiverse


保存退出。


3)更新源。


执行


4 配置编译环境并下载JDK5



1.3.2 官方网站下载JDK5安装


1) 官网http://java.sun.com/javase/downloads/5u22/jdk去下载jdk-1_5_0_22-linux-i586.bin


2) 然后执行安装,


执行之后,生成 ~/jdk1.5.0_22


3JDK版本切换


安装了多个JDK的话,可以用update-alternatives设置版本,并进行切换选择使用哪个。


首先为JDK1.5版生成可选配置选项:


说明:/usr/bin/jdk是符号链接,它指 /etc/alternatives/jdk(由第2个参数给出),~/jdk1.5.0_22(/home/haili/jdk1.5.0_22)是实际目的链接,255是优先级(任意整数,在自动模式时,数字大的优先级较高,被选为默认配置选项)。


4) 配置JAVA环境


执行:


在文件的尾部追加:


export JAVA_HOME=/usr/bin/jdk


export JRE_HOME=JAVA_HOME/jre


export CLASSPATH=$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH


export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH



使更改生效。保存文件,执行



二、下载Android2.2 platform


下载Android PlatformgitAndroidrepo封装了git,用curl获取repo。工具git-corecurl1.2中已经下载安装了。



2.1. 获取repo



2.2. ~/bin路径加入到PATH


执行:


在文件的尾部追加:


export PATH=$PATH:~/bin



执行



2.3 获取android-2.2.2.r1


可以到http://android.git.kernel.org,点击platform/manifest.git看当前的版本,笔者选择了当前2.2的最新版本android-2.2.2_r1



下载android2.2.2_r1,执行




三、编译Android镜像


环境设置


会提示选择


1. generic-eng


2. simulator


3. full_dream-userdebug


4. full_passion-userdebug


5. full_sapphire-userdebug



选择1,会显示当前的设置


PLATFORM_VERSION_CODENAME=REL


PLATFORM_VERSION=2.2.2


TARGET_PRODUCT=generic


TARGET_BUILD_VARIANT=eng


TARGET_SIMULATOR=false


TARGET_BUILD_TYPE=release


TARGET_BUILD_APPS=


TARGET_ARCH=arm


HOST_ARCH=x86


HOST_OS=linux


HOST_BUILD_TYPE=release


BUILD_ID=FRG83G



编译,执行



如果编译没什么问题,编译完成之后会生成镜像在目录~/android-2.2.2_r1/out/target/product/generic下:system.imgramdisk.imguserdata.img



四、编译Android SDK


刚才并没有编译SDK。要编译SDK,执行



生成


~/ android-2.2.2_r1/out/host/linux-x86/sdk/android-sdk_eng.haili_linux-x86.zip


~/ android-2.2.2_r1/out/host/linux-x86/sdk/android-sdk_eng.haili_linux-x86



加入路径,追加下面两行到~/.bashrc


export ANDROID_SDK_ROOT=~/ android-2.2.2_r1/out/host/linux-x86/sdk/android-sdk_eng.haili_linux-x86


export PATH=$ANDROID_SDK_ROOT/tools:$PATH



执行



五、验证



创建AVD,执行



在启动的Android SDK and AVD Manager中,创建AVD,取值如下,


Name: AVD_HVGA;


Target: Android 2.2.2 – API Level 8;


SD Card: 1024M


Skin: HVGA



点击按钮Create AVD,创建出AVD_HVGA



执行


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Android让App彻底退出 下一篇Android图像处理之Bitmap类

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·Python爬虫教程(从 (2025-12-26 16:49:14)
·【全269集】B站最详 (2025-12-26 16:49:11)
·Python爬虫详解:原 (2025-12-26 16:49:09)
·Spring Boot Java: (2025-12-26 16:20:19)
·Spring BootでHello (2025-12-26 16:20:15)