感谢支持
我们一直在努力

使用Ubuntu 17.04编译Android 6.0源代码

在安装了最新的Ubuntu 17.04后编译Android 6.0源代码的过程中,遇到了很多问题:

1、openjdk无法支持jdk8,只能用回jdk7

2、还有很多未曾遇到的编译问题

还陆陆续续遇到了各种各样的编译失败的信息,最后,参考Ubuntu 16.04编译Android的方法顺利解决。

Android 6.0源码下载地址: http://www.linuxidc.com/Linux/2016-01/127285.htm

比如下面这个错误:

是参考

Ubuntu 16.04 下载和编译Android 6.0 源码  http://www.linuxidc.com/Linux/2017-05/144072.htm

Ubuntu 16.04下编译Android 6.0源码  http://www.linuxidc.com/Linux/2017-05/144071.htm

直接将:

art/build/Android.common_build.mk文件的:

ifneq ($(WITHOUT_HOST_CLANG),true)改为ifeq ($(WITHOUT_HOST_CLANG),false)

然后发现make -j32后还是一样出现了如图的错误:

于是又爬了很久的坑,找到了最终的解决方案:

参考了网上的文章,与clang编译器有关:

具体参考修改方案:

http://www.linuxidc.com/Linux/2017-05/144073.htm

解决方法:
clang编辑器的问题,在art/build/Android.common_build.mk 中将host 默认编辑器使用clang关掉,找到WITHOUT_HOST_CLANG

关闭clang:

#Host.
 ART_HOST_CLANG := false
 ifneq ($(WITHOUT_HOST_CLANG),true)
 # By default, host builds use clang for better warnings.
 ART_HOST_CLANG := false
 endif

编译的时候,内存貌似占用不是太多,CPU消耗得太多。

跟之前在虚拟机上编译得不太一样,虚拟机太吃内存,以下是真机编译Android6.0的时候,内存和CPU的占用情况。

最后,终于编译成功了:

更多Android相关信息见Android 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=11

本文永久更新链接地址:http://www.linuxidc.com/Linux/2017-05/144076.htm

赞(0) 打赏
转载请注明出处:服务器评测 » 使用Ubuntu 17.04编译Android 6.0源代码
分享到: 更多 (0)

听说打赏我的人,都进福布斯排行榜啦!

支付宝扫一扫打赏

微信扫一扫打赏