Ubuntu10.10下编译Android2.2内核
来源:互联网 发布:福利彩票双色球计算法 编辑:程序博客网 时间:2024/06/11 11:37
Ubuntu10.10下编译Android2.2内核
田海立@CSDN 2011/06/17
环境:Ubuntu10.10 Android2.2.2_r1 android-gldfish-2.6.29
0 说明
Android2.2的platform和kernel是分别的项目,要分别下载编译。本文是Ubuntu10.10 环境下android 内核(goldfish-2.6.29)的编译。
读者:希望深入Android底层开发者,如果只是ANDROID应用开发者,不用如此麻烦,直接下载现成的SDK以及其他相应工具即可。
一、环境准备
同《Ubuntu10.10下编译Android2.2平台》中环境的准备。
二、下载Android2.2 Kernel – Goldfish
Android有各种平台的Kernel版本,其中有一个Goldfish的模拟器使用的Kernel。
获取android-gldfish-2.6.29
可以到http://android.git.kernel.org,点击kernel/common.git看当前的版本,笔者选择了android-gldfish-2.6.29。
下载android-gldfish-2.6.29,执行
haili@haili-desktop:~$cd android-2.2.2_r1
haili@haili-desktop:~/android-2.2.2_r1$git clone git://android.git.kernel.org/kernel/common.git –b android-2.6.35 kernel
haili@haili-desktop:~/android-2.2.2_r1$cd kernel
haili@haili-desktop:~/android-2.2.2_r1/kernel$git checkout android-gldfish-2.6.29
三、获取配置信息
从prebuilt的模拟器中获取编译配置信息
haili@haili-desktop:~/android-2.2.2_r1/kernel$emulator -avd AVD_HVGA
haili@haili-desktop:~/android-2.2.2_r1/kernel$adb pull /proc/config.gz
haili@haili-desktop:~/android-2.2.2_r1/kernel$gunzip config.gz
haili@haili-desktop:~/android-2.2.2_r1/kernel$cp config .config
四、编译Android Kernel
编译kernel,需要配置信息,这在上段已经设置;
另外要指定ARCH,Goldfish还是模拟的ARM,这里指定ARCH=arm;
编译器也要指定,这里用prebuilt里的arm-eabi-4.4.0。
所以,执行
haili@haili-desktop:~/android-2.2.2_r1$cd kernel
haili@haili-desktop:~/android-2.2.2_r1/kernel$make ARCH=arm CROSS_COMPILE=~/android-2.2.2_r1/prebuilt/linux-x86/toolchains/arm-eabi-4.4.0/bin/arm-eabi- -j2
编译完成,最后生成
Kernel: arch/arm/boot/zImage is ready
五、验证
指定到编译生成的内核,执行
$cd ~/android-2.2.2_r1
haili@haili-desktop:~/android-2.2.2_r1$emulator –kernel kernel/arch/arm/boot/zImage –avd AVD_HVGA
在启动的模拟器里,进入Setting查看内核版本是否是你刚刚编译的。
*** 欢迎转载,并请注明来自http://blog.csdn.net/thl789 ***
- Ubuntu10.10下编译Android2.2内核
- Ubuntu10.10下编译Android2.2平台
- Ubuntu10.10下编译Android2.2平台
- ubuntu10.10下编译Android2.3.3源码
- Ubuntu10.10下编译Linux2.6.36内核
- Ubuntu10.10下编译Linux2.6.36内核
- Ubuntu11.04 - 64 bits下编译Android2.2内核
- 在Ubuntu10.04下编译android2.3.7源码全过程
- Ubuntu10.10下编译内核linux-2.6.38成功
- Ubuntu10.10搭建Android2.2基于ARM的交叉编译环境
- ubuntu10.10 编译android2.3源码 sdk adt
- Ubuntu10.10(64位)编译Android2.3
- ubuntu10.10 编译android2.3源码 sdk adt
- 在32位Ubuntu10.10上编译Android2.3
- Ubuntu10.10(64位)编译Android2.3源码问题解决
- Ubuntu10.04编译android2.2源码出错问题解决
- android2.2 源码编译-Ubuntu10.04 (X86) + android2.2 + JDK1.6
- android2.2源码编译-Ubuntu10.04 (X86) + android2.2 + JDK1.6
- 不要在namespace定义内包含文件
- JAVA高级视频02_IO输入与输出日记4(02-11到12)
- 随笔
- 二进制、八进制、十进制、十六进制之间转换
- sort函数中的第三个参数
- Ubuntu10.10下编译Android2.2内核
- StageVideo 在 Flex Applicaiton 中成瞎子了!?
- CxImage图像灰度处理简述
- WINDOWS SOCKET下的网络编程
- Where is my way ?
- pku2482 史上最浪漫的题(二叉静态检索树)
- javascript 内存管理 避免内存泄漏 [ajax in action]
- Intercepting Calls to COM Interfaces
- 用C++设计一个不能被继承的类