Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2972675
  • 博文数量: 685
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 5303
  • 用 户 组: 普通用户
  • 注册时间: 2014-04-19 14:17
个人简介

文章分类

全部博文(685)

文章存档

2015年(116)

2014年(569)

分类: 嵌入式

2015-03-14 12:25:54

原文地址:

从源树下载下来的最新Android源,是不包括代码的,也就是Android源代码工程默认不包含Linux Kernel代码,而是使用预先好的,也就是prebuilt/-arm/kernel/kernel-qemu文件.

因为谷歌官网上已经有可以下载到的Android内核,还有就是三星和HTC也公布了自己的Android内核,让开发者可以有更大权限开发一些特定的应用,本人愚见,这种策略对于三星和HTC也有很大的利益!

前一段时间一直在弄毕业论文和答辩的事情,还要急着赶回来上班,已经有一段时间没有弄Android了,话不多说,在老罗前一篇文章提到,从源树下载下来的最新Android源,是不包括代码的,也就是Android源代码工程默认不包含Linux Kernel代码,而是使用预先好的,也就是prebuilt/-arm/kernel/kernel-qemu文件。众所周知,一个新的Android系统必须使用自己的Android内核,才可以添加一些特有的功能,进行一些定制化的,那么怎样运行自己的Android内核呢?因为谷歌官网上已经有可以下载到的Android内核,还有就是三星和HTC也公布了自己的Android内核,让开发者可以有更大权限开发一些特定的应用,本人愚见,这种策略对于三星和HTC也有很大的利益!

   因为谷歌上有可以在模拟器中运行的goldfish Android内核源码,用这个来学习DIY Android内核是非常好的选择,我在学习过程中主要参考了老罗的Android之旅,具体参考如下:

参考文档:http://blog.csdn.net/luoshengyang/article/details/6564592

另外我想说的是,任何知识都需要亲自去尝试,才能学得更牢!

一 ==下载Linux Kernel  Android源代码。

      1. 使用GIT工具下载,执行以下命令:

      USER-NAME@MACHINE-NAME:~/Android$ mkdir kernel

      USER-NAME@MACHINE-NAME:~/Android$cd kernel      USER-NAME@MACHINE-NAME:~/Android/kernel$git clone       然后转到刚才同步的文件中,我同步之后只有一个goldfish目录     我的DIY Android之旅--下载编译并运行你的Android内核     接着就是检出能够在Android模拟器中运行的Android内核源码,cd goldfish ;接着git checkout remotes/origin/archive/android-gldfish-2.6.29 二 ==编译下载下来的Android内核源码goldfish1. 导出交叉编译工具目录到$PATH环境变量中去:       USER-NAME@MACHINE-NAME:~/Android/kernel/common$export PATH=$PATH:~/Android/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/     2. 修改common目录下的Makefile文件的以下两行为:      # ARCH ?= (SUBARCH)      # CROSS_COMPILE?=      ARCH ?= arm  #体系结构为arm      CROSS_COMPILE    ?= arm-eabi- #交叉编译工具链前缀,参考~/Android/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin目录     3. 开始编译:      USER-NAME@MACHINE-NAME:~/Android/kernel/common$make goldfish_defconfig 出现莫名错误,make: ***//build_kernel/linux-2.6.14.1/arch/arm Is a directory .Stop网上查询得知,原来是原来是因为 ARCH ?= arm后面多了一个空格的缘故,我以为是错误了!!!囧!!!修改Makefile,把空格去掉,接着编译      USER-NAME@MACHINE-NAME:~/Android/kernel/common$make成功编译了!我的DIY Android之旅--下载编译并运行你的Android内核三==运行编译成功的Android内核emulator -kernel /home/hu/android-2.3/kernel/goldfish/arch/arm/boot/zImage用adb  查看运行的内核信息我的DIY Android之旅--下载编译并运行你的Android内核      显示运行正是刚才编译成功的Android内核接下来做的应该是在网上下载一个对应于自己的手机Android内核,然后编译一下,下载到手机中用用,这才能正真感受到DIY Android内核的魅力!附上小米论坛上一位机友编译htc Android内核的图文教程,有htc手机的猿可以试试!!!
阅读(3392) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~