Android源码编译——RK3128开发板基于Android5.1源码编译小记

原创 2016年08月28日 19:31:55

前言:
本次小记主要分为三段。前两段相当于对源码编译的一个回顾。本次小记主要第三段,记下了编译中出现的几个问题,以便日后需要。
1、编译时编译线程过多。导致编译失败。
2、编译image没问题打包OTA时出现错误。

一、编译环境
1、硬件环境:(以下为官方建议)

编译 Android 对机器的配置要求较高:
64 位 CPU
16GB 物理内存+交换内存

(我是用的是2.0GHz四核处理器J1900。配置相对低很多,所以编译花了20几个小时。 )
2、软件环境:官方需要OpenJDK 7和推荐 Ubuntu 14.04
(Android5.1需要使用OpenJDK 7的版本。而我还是使用的jdk1.7也编译成功了。至于官方为啥不用jdk而选用OpenJDK 7好像是Sun和Google的那场Android官司导致。)
二、系统编译
编译方法和编译Android4.4没啥区别。具体可以参见我的另一篇博文:Android4.4编译环境的搭建和编译
本次编译和之前唯一不同的是在编译完后打包了可以在硬件上刷机或升级的update.zip包。
1、编译OAT升级包
编译方法:
在源码编译完后(也就是执行make等待数小时后)在执行

make otapackage

即可在out/target/product/你使用lunch选择的产品/目录下生成zip包。

三:问题整理
1、编译时在make 后边加了-j4。虽然主频低一点,但起码也是也是个四核。本以为开四个线程编译应该没问题。没想到早上起来查看挂机结果时没编译通过。于是还是老老实实的选择了一个线程编译。有钱了直接整个志强的U来编译算了。
2、源码编译完成了,也生成了img镜像文件。可就是在打包OTA时发生错误。
这里写图片描述
每次都是在快输出zip时出错了。而且每次都是同一处。在网上查资料几乎所有的回答都出自同一处。也不知谁是原创。都说是RK的源码中有一处try缩进有问题。跟着资料上对着看也没发现问题。
后来尝试资料中的一个方法发现确实有一个文件没有编译到环境中。

“发现是drmsigntool没有编译进去,于是cd build/tools/drmsigntool/,然后mm -B,再回到源码根目录下make otapackage,然后看到如下错误:”

确实是drmsigntool这个DRM签名工具没有初始化到环境里边。
按资料上说的进入目录编译后在执行

make otapackage

就生成了响应的OTA包。
都说RK的源码有很多问题。由于技术有限。也不知道是不是RK的问题。本次编译完了改天找个开发板升级进去看看能否正常运行。有能力的话再加以学习学习RK3128这个解决方案。

至此本次学习笔记已经整理完毕。希望在与大家分享的同时让自己也可以加深记忆。和大家一起学习一起进步。

扫描下方二维码即可关注我的公众号,想要实时接收博文推送,拿出手机扫码关注公众号吧~

公众号二维码

会不定期的更新相关内容哟 ^_^

下载Android5.1源代码

1. 接上一篇,我们找到google服务器地址并且修改了host后, 就要用此地址下载android源码啦, 开始折腾前先确认一下,否则白折腾。 打开网址, http://www.apkbus.co...
  • zzqhost
  • zzqhost
  • 2017年05月07日 08:01
  • 759

RK3128系统&驱动开发分享——(一)、开发环境搭建

本系列课程主要讲解RK3128平台的系统&驱动开发相关的知识。 RK3128为我司基于RK3128平台定制的一款pad设备。基于瑞芯微官网源码开发。android版本采用5.1。 本章节主要讲解a...
  • guoyiyan1987
  • guoyiyan1987
  • 2017年12月20日 14:10
  • 306

搭建瑞芯微rk3128本地android代码服务器

从供应商那里拿到的rk3128android 4.4的源码包。解压前压缩包大概5G,通过命令解压后发现只有一个隐藏的.repo 目录大小4096。 然后执行命令 repo sync -l 意思...
  • lb5761311
  • lb5761311
  • 2016年01月11日 15:03
  • 2168

OTA制作及升级过程笔记

1、概述 1.1   文档概要 前段时间学习了AndroidRecovery模式及OTA升级过程,为加深理解和防止以后遗忘,所以写这篇文档进行一个总结和梳理,以便日后查阅回顾。文档主要包括两部分,第一...
  • teliduxing1029
  • teliduxing1029
  • 2016年05月30日 11:29
  • 4257

[RK3128][Android 6.0] OTA编译错误

使用make otapackage命令编译ota包时出现以下错误: Package target files: out/target/product/rk312x/obj/PACKAGING/tar...
  • heabby2010
  • heabby2010
  • 2018年01月31日 10:48
  • 34

android 5.1 非STR待机流程

android在长按Power键(手机或pad)或按下电源键(电视)会进入待机状态,下面分析一下非STR待机流程。 待机分STR和非STR待机。 STR待机是为了实现快速开关机,提高开机速度。andr...
  • zhudaozhuan
  • zhudaozhuan
  • 2016年03月16日 17:25
  • 2198

Android源码编译——RK3128开发板多款红外遥控器常用按键适配

最近拿到一块Demo板,由于种种原因忘了入手遥控器。想到公司产品也是通过遥控操作,就抱着试一试的心态使用公司遥控器调试。一路下来发现只有上下键可以使用。然而是相反的。以前没做过底层,查阅相关资料后发现...
  • u012588561
  • u012588561
  • 2016年10月24日 21:45
  • 1845

RK3188上运行Ubuntu系统

参照:http://androtab.info/radxa_rock/ubuntu/ 注意事项: 1.不要使用163源,163的源上不带 armhf架构。 2.Sdcard使用不了可...
  • wangjianzhongfj
  • wangjianzhongfj
  • 2014年12月31日 01:59
  • 6375

rk3128 开发

一、解压sdk固件到/home/ 目录下 1、瑞星微SDK目录简单介绍 ├── abi ├── AndroidTool_Release_v2.33  存放工具 AndroidTool.exe w...
  • huangkaiyue1
  • huangkaiyue1
  • 2016年06月05日 20:34
  • 1227

rk3128 gpio开发

一、Rk3128 led 驱动 1、关于dts文件描述 瑞芯微平台上所有的gpio资源都是描述在dts 文件当中 dts 文件一般存放在kernel目录下 arch/arm/boot/dts/ ...
  • huangkaiyue1
  • huangkaiyue1
  • 2016年06月06日 23:33
  • 1972
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Android源码编译——RK3128开发板基于Android5.1源码编译小记
举报原因:
原因补充:

(最多只允许输入30个字)