Android系统源码与内核下载编译及刷机讲解
- 0.前言说明
- 1.准备工作
- 2.Android源码下载
- 3.Android编译环境搭建
- 4.Android系统编译
- 5.Android内核下载
- 6.Android内核编译
- 7.内核模块编译
0.前言说明
- 这是第一节课我选的题目,第二节课就要汇报PPT的,没办法自己课题组老师开的课,没接触过Android,也得硬着头皮上。以为挺简单的,就选了这个题目,后来周三开始做,周日上午才发给助教,最坑的就是学校限流量,下什么都不舍得~期间多次打算换题,还好,坚持就会柳暗花明又一村。
1.准备工作
- Android 由四个层组成:
- Linux 内核(c/c++)
- 本地用户空间native (c/c++)
- 应用程序框架层
- 应用程序层(java)
老师说她一般在kernel、native、framework层进行代码安全加固。
- 选择Android4.4,4.4系统优化较4.0,2.3明显,且不算太大;20G,6.0的大约60G
- 环境:
- ①安装虚拟机Ubuntu16.04编译快
4G运存,CPU 4核心,80G硬盘(最后占50G) - ②安装samba文件服务器,进行文件传输
- ①安装虚拟机Ubuntu16.04编译快
2.Android源码下载
两种方式:
- repo工具(批处理工具,一次下载多个git仓库)
- ①.安装repo:
mkdir ~/bin
PATH=~/bin:$PATH
下载repo脚本:
curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
设置repo可执行权限:
chmod a+x ~/bin/repo - ②.初始化repo客户端
创建AndroidCode目录用来存放源码:
mkdir AndroidCode
cd AndroidCode
运行repo下载源码:
repo init -u https://android.googlesource.com/platform/manifest -b android-4.4_r1
repo sync
据说20个G,提供更新.repo文件占10个g,我们暂时用不到,所以采用第二种,并让同学帮我分担了一部分流量~
- ①.安装repo:
直接下载:百度云下Android2.3到6.0的源码链接:
http://blog.csdn.net/ilittleone/article/details/6823441
是经过压缩split分割过的