Andriod操作系统内核编译.ppt_第1页
Andriod操作系统内核编译.ppt_第2页
Andriod操作系统内核编译.ppt_第3页
Andriod操作系统内核编译.ppt_第4页
Andriod操作系统内核编译.ppt_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第二节 Google Android操作系统内核编译,和标准的Linux开发流程一样,Android平台开发的一个很重要的基础工作就是对其内核的编译和移植。 Android作为Google公司推出的一款手机开发平台,其本身是基于Linux内核的。Google提供的内核源代码中除了Linux部分外,有很大一部分是与虚拟处理器Qemu和模拟硬件平台Goldfish相关的。所以如果想将Android移植到实际的硬件平台上需要将这部分代码剥离出来。 2.1、工作环境及所需软件包 系统环境:RedhatLinux9.0 交叉编译器:GNUToolchainforARMProcessors 下载地址: 其

2、中第一项选择ARMEABI或ARMGNU/Linux,第二项选择IA32GNU/Linux即可。,Android内核源代码:Linux-2.6.23-android-m5-rc14.tar.gz 下载地址:,AndroidSDK下载地址:,2.2、搭建交叉编译环境 1)安装AndroidSDK:将android-sdk_m5-rc14_Linux-x86.zip解压缩到适当路径下即可使用。如将其释放至/usr/local/android_sdk_Linux路径下,并将其tools路径添加到PATH中: $exportPATH=$PATH:/usr/local/android_sdk_Linux

3、/tools 2)安装交叉编译器:将ARM-2007q3-51-ARM-none-Linux-gnueabi-i686-pc-Linux-gnu.tar.bz2解压缩至/usr/local/ARM-2007q3目录下,并将其bin路径添加到PATH中: $exportPATH=$PATH:/usr/local/ARM-2007q3/bin,3)解压缩内核源代码:将Linux-2.6.23-android-m5-rc14.tar.gz解压缩,得到kernel 文件夹,将其放置在/Android目录下。,2.3、获取内核编译配置文件 交叉编译环境搭建好后需要得到android的内核编译参数的配置文

4、件,该文件需要从androidsdk中的模拟器中得到。 启动android模拟器,然后通过adb得到模拟器中提供的内核配置文件: $emulator&$adbpull/proc/config.gz 这时候adb工具会连接模拟器,并从它里面下载一个叫做config.gz的文件到当前目录下。将其移动至kernel目录,解压该文件得到config,将其重命名为.config,这样就可以跳过makeconfig而直接得到Makefile所需要的内核配置文件。 $gunzipconfig.gz$mvconfig.config,2.4、修改Makefile 首先修改第187行,将CROSS_COMPILE值改为ARM-none-Linux-gnueabi-,这是安装的交叉编译工具链的前缀,修改此处意在告诉make在编译的时候要使用该工具链。,然后修改第519、520行,将buildid值注释掉,因为目前版本的android内核不支持该选项。,2.5.开始编译 在kernel目录下执行make: $make 除个别警告外编译过程一切顺利,最终在/kernel/arch/ARM/boot目录下面生成一个zImage,即为编译好的内核镜像了。

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论