Android驱动开发前的准备(四)
源代码的下载和编译
4.1 下载、编译和测试Android源代码
4.2下载和编译linux内核源代码
4.1.1 配置Android源代码下载环境
(1) 创建一个用于存放下载脚本文件的目录
# mkdir -/bin # PATH=-/bin:$PATH
(2) 下载repo脚本文件
# curl https://dl-ssl.google.com/dl/goolesource/git-repo> -/bin/repo # chmod a+x ~/bin/repo
(3) 创建用于存放Android源代码的目录
# mkdir android _source # cd android_source
(4) 初始化
# repo init -u http://android.googlesource.com/platform/manifest
(5) 开始下载android源代码
# repo sync
4.1.2 Android源代码目录结构解析
Android源码目录结构

4.1.3 下载android源代码中的一部分
法一:使用repo sync命令
# repo sync platform/bootable/recovery
法二:使用git clone 命令
# git clone https://android.googlesource.com/<project name>
4.1.4编译android源代码
(1)初始化编译环境
# source build/envsetup.sh或#. Build/envsetup.sh
(2)选择目标
# lunch full-eng
(3)编译Android源代码
# make -jn
4.1.5 out目录结构分析
out目录结构

Out目录是存放Android源代码生成的目标文件的默认目录,out目录里只有两个直接的子目录:host和target
4.2 下载和编译linux内核源代码
要想使用linux内核,必须单独下载linux内核源代码
4.2.1下载linux内核源代码
# git clone https://android.googlesource.com/kernel/common.git
4.2.2 linux 内核源代码的目录结构
Linux内核源代码目录的含义


4.2.3安装Android内核的编译环境
(1)准备工作
将arm-linux-gcc-4.3.2tgz文件和arm-none-linux-guneabi-arm-2008q3-72-for-linux.tar.bz2文件复制到工作目录
(2)解压编译器
# tar xzvf arm-linux-gcc-4.3..tgz -C / # tarjxvf arm-none-linux-guneabi-arm-2008q3--for-linux.tar.bz2 -C /
(3)验证交叉编译器是否安装成功
# ls /usr/local/arm -l
(4)安装libncurses5
# apt-get install libncurses5-dev
4.2.4 配置和编译linux内核
可以使用以下命令进行编译
# export PATH=/root/compilers/arm-none-linux-gnueabi/bin:$PATH # cd ~/linux_kernel # make clean # make
小结:
Android移植主要就是linux内核的移植,而linux内核的移植主要是linux驱动的移植,所以为了开发和测试linux驱动需要在Ubuntu linux下搭建两套开发环境:Android应用程序开发环境和linux内核开发环境。
Android驱动开发前的准备(四)的更多相关文章
- Android驱动开发前的准备
最近看了一些Android驱动开发前需要知道的资料,收获很多,接下来就谈谈我自己的一些心得体会. Android在近几年时间发展迅速,已经成为智能手机操作系统的老大.不过,因为Android原生的代码 ...
- 初入android驱动开发之字符设备(四-中断)
上一篇讲到android驱动开发中,应用是怎样去操作底层硬件的整个流程,实现了按键控制led的亮灭.当然,这是一个非常easy的实例,只是略微演变一下,就能够得到广泛的应用. 如开发扫描头,应用透过监 ...
- android驱动开发前的准备(五)
搭建S3C6410开发板的测试环境 首先安装串口调试工具 第一步:检测当前系统是否支持USB转串口 # lsmod | grep usbserial 第二步:安装minicom # apt-get i ...
- Android驱动开发前的准备(三)
Git使用入门 3.1安装Git 3.2查看Git文档 3.3源代码的提交与获取 3.1安装Git # apt-get install git # apt-get install git-doc gi ...
- Android驱动开发前的准备(一)
Android系统移植与驱动开发概述 1.1 Android 系统架构 1.2 Android系统移植的主要工作 1.3 查看linux内核版本 1.4 linux内核版本号的定义规则 1.5 lin ...
- Android驱动开发前的准备(二)
搭建android开发环境 2.1 Android底层开发需要哪些工具 2.2 安装 JDK 2.3 搭建Android 应用程序开发环境 2.4安装Android NDK开发环境 2.5安装交叉编译 ...
- Android驱动开发5-8章读书笔记
Android驱动开发读书笔记 第五章 S5PV210是一款32位处理器,具有 ...
- 初入android驱动开发之字符设备(一)
大学毕业,初入公司,招进去的是android驱动开发工程师的岗位,那时候刚进去,首先学到的就是如何搭建kernel.android的编译环境,然后就是了解如何刷设备以及一些最基本的工具.如adb.fa ...
- Android安卓书籍推荐《Android驱动开发与移植实战详解》下载
百度云下载地址:点我 Android凭借其开源性.优异的用户体验和极为方便的开发方式,赢得了广大用户和开发者的青睐,目前已经发展成为市场占有率很高的智能手机操作系统. <Android驱动开发与 ...
随机推荐
- Apache安装与属性配置
Apache 事先创建进程 按需维持适当的进程 模块块设计,核心比较小,各种功能都模块添加(包括php) 支持运行配置,支持单独编译模块 支持多种方式的虚拟主机配置 Socket IP ...
- setProgressBarIndeterminateVisibility(true);
此为在标题栏 上 设置一个loading 圈 实用...
- AVLTree 平衡树
//测试数据//第一组:7个输入,测试LL型,40,36,44,32,38,28,24://第二组:7个输入,测试RR型,40,36,44,43,48,52,56://第三组:7个输入,测试LR型,4 ...
- ArcGisEngineForJava开发
ArcGIS Engine control examples 一.利用Visual JavaBeans来构建应用程序 这种方案是针对使用可视化的Java组件,想要来构建和部署应用程序的开发人员.Jav ...
- AngularJs的UI组件ui-Bootstrap分享(十二)——Rating
Rating是一个用于打分或排名的控件.看一个最简单的例子: <!DOCTYPE html> <html ng-app="ui.bootstrap.demo" x ...
- JavaScript测试题
您的回答: 1.我们可以在下列哪个 HTML 元素中放置 Javascript 代码? 您的回答:<script> 2.写 "Hello World" 的正确 Java ...
- css3 文字轮番滚动效果2——改进版
1.优化了之前的代码: 2.修正了先前按照文字的条目的数量计算速度的问题,现在改为按照字符的个数计算动画执行一次需要的时间,更为精确: 3.增添了每一行JS代码的注释. 4.这个案例的用途一般为告警信 ...
- iShare.js分享插件
iShare.js是一个小巧的分享插件,纯JS编写,不依赖任何第三方库,使用简便. 为啥写这个插件? 因为在搭建个人blog时(还没有搭建好(¯﹃¯)),对目前国内比较受欢迎的分享插件都不太满意,主要 ...
- [Python学习笔记1]Python语言基础 数学运算符 字符串 列表
这个系列是我在学习Python语言的过程中记录的笔记,主要是一些知识点汇总,而非学习教程,可供有一定编程基础者参考.文中偏见和不足难以避免,仅供参考,欢迎批评指正. 本系列笔记主要参考文献是官网文档: ...
- 生成highcharts报表时对数据没有用= eval('([' + seriesArray+ '])')处理生成数组,而是简单的拼成字符串,结果导致大量的场景出现
<script type="text/javascript"> //异步初始周达成率趋势图信息 function goFinishQuery() { var yearN ...