本篇内容介绍了“Android4.4旧源码编译分析”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
创新互联主营百色网站建设的网络公司,主营网站建设方案,app软件开发,百色h5成都微信小程序搭建,百色网站营销推广欢迎百色等地区企业咨询
在网盘目录中“iTOP4412 开发板资料汇总(不含光盘内容)\iTOP-4412 开发板系统源
码及镜像(其他)\android_4.4.4 源码以及对应 Kernel 源码”中下载 Android4.4.4 的 文件
系统,并通过 github 下载 uboot(Android4.4 的 uboot 源码和 Android4.0.3 完全一样)
和 kernel 的源码(参考附录六)。
5.4.2.1 uboot 的编译
Android4.4.4 对应 uboot 的源码,编译器,参数配置,编译脚本以及编译参数和
Android4.0.3 的 uboot 全部一模一样。
5.4.2.2 Linux 内核的编译
源码目录
网盘下载 Android4.4.4 对应的源码。在网盘“iTOP-4412 开发板系统源码及镜像(其
他)”→“android_4.4.4 源码及镜像”目录下。
编译器
Android4.4.4 对应内核的编译器和 Android4.0.3 的内核编译器一模一样。
参数配置
内核的编译是组合式配置文件,基本的配置文件名是“config_for_android_YY”,YY 表
示用下表所示的参数替代。
如上表所示,如果需要 Android4.4.4 支持 WiFi,则需要配置对应的参数。
编译生成内核镜像举例
和 Android4.0.3 内核一样,如果需要编译对应核心板的内核,首先使用 cp 命令将对应
的配置文件覆盖掉”.config”,然后在执行编译命令“make zImage”。
生成内核镜像的目录也是“arch”-->“arm”-->“boot”。
5.4.2.3 Android4.4.4 的编译
Android4.4.4 源码在网盘“iTOP-4412 开发板系统源码及镜像(其他)\android_4.4.4
源码以及对应 Kernel 源码”目录中下载,编译器和参数配置和 Android4.0.3 一模一样。
更新环境 javap
编译 Android4.4.4,还缺少一个“javap”命令,使用命令:
“update-alternatives --install "/usr/bin/javap" "javap"
"/usr/lib/jvm/jdk1.6.0_43/bin/javap" 1”
更新一下,如下图所示。
源码下载
内核的源码也可以在 github 上下载,具体参考使用手册附录 6.2,附录中有迅为
Android4.4 对应内核源码 github 下载地址。
使用手册附录中有介绍 repo 下载 Android4.4 源码的方法,但是从今年(2016)开始,
repo 经常性的无法下载和使用。所以最好到迅为百度网盘中下载源码(目录参考使用手册编
译章节),选取日期最近的目录下载即可。
网盘中源码包一般是 gz 后缀、7z 或者 rar 后缀。gz 后缀可以直接在 Ubuntu 下解压;
7z 和 rar 后缀都是需要先在 windows 下解压出 gz 后缀压缩包,然后再在 Ubuntu 下解压。
内核以及 Android 源码路径
编译 Android4.4 源码的时候,一定要注意内核源码的目录。在和 Android 源码目录
“ iTop4412_KK4.4_git ”的同一级目录下,新建一个 kernel 目录,然后将内核源码放到
kernel 目录下,要使用迅为默认的文件名“iTop4412_Kernel_3.0”。
例如:在 Android4.4 的源码目录下,使用命令
“ls ../kernel/iTop4412_Kernel_3.0/”,如下图所示,内核的目录才是正确的。
另外在编译 Android4.4 之前,必须成功编译 Android4.4 对应的内核。
然后进入 Android4.4.4 源码解压后得到文件夹“iTop4412_KK4.4”中,使用命令
“./build_android.sh”,运行一键编译脚本,开始编译 Android4.4.4。注意:编译
Android4.4.4 必须保证给 Ubuntu 系统提供 3G 以上内存。这里“提供 3G 以上内存”的意
思,不仅仅是指在 VMware Workstations 虚拟机中设置分配 3G 内存。例如,用户在编译的
时候,PC 机的内存一共是 4G,在虚拟机中设置分配 3G 内存,但是在 Windows 系统下,开
着 QQ,杀毒软件,音乐播放器,浏览器等等,这样在 Windows 下占用的内存就快 2G 了,
那么虚拟机会自动调整到只占用 2G,甚至不到 2G 的内存,这样是没法编译通过的。
正确的分配内存方法是,首先给虚拟机分配 3G 以上内存,然后在 Windows 下关掉尽量
多的不必要的应用,关掉尽量多应用的后台程序。
当然,如果用户的 PC 是 8G 或者 16G 内存,随意就成。
如下图所示,编译完成。在文件夹
“iTop4412_KK4.4/out/target/product/smdk4x12”中,生成镜像“system.img”和
“ramdisk-uboot.img”。
用户完全按照步骤编译错误,可以使用“df -l”查看一下盘符剩余空间还剩下多少,如下
图所示,如果是已使用 100%,则是空间不足。
“Android4.4旧源码编译分析”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注创新互联网站,小编将为大家输出更多高质量的实用文章!