专栏首页安智客8G内存的电脑编译不了Android O系统?

8G内存的电脑编译不了Android O系统?

Android系统的编译工作始终是一件基础性工作,但是随着Android版本的不断升级、Ubuntu的升级、JDK版本的升级等等、以及各种第三方依赖库、不同的系统配置不同的人编译会有不同的问题,同一个人在不同的时间编译也可能会遇到问题。AndroidO版本推出不到一年,据说目前只有百分之一的手机在用,这不,AndroidP版本马上就要出来了!

Google对Android O的编译要求是这么建议的:

(https://source.android.com/setup/build/requirements)

安智客今天要呈现的是一个失败的、初级的问题,也就是Android O的编译问题,在服务器上2小时完成的编译,为啥在安智客好不容易升级成8G内存的电脑上弄了2天呢?现在把几个主要问题记录一下:

1,JDK版本问题,这个是最基础问题还是记录一下。

解决办法:这个最好办:

sudo add-apt-repository ppa:openjdk-r/ppa sudo apt-get update sudo apt-get install openjdk-8-jdk sudo update-alternatives --config java

sudo update-alternatives --config javac

java –version

其他,还有一些Ubuntu版本导致的库的问题,这个是时候,差什么就安装什么了!

2,ln问题。

解决办法,

当我们需要在不同的目录,用到相同的文件时,我们不需要在每一个需要的目录下都放一个必须相同的文件,我们只要在某个固定的目录,放上该文件,然后在其它的目录下用ln命令链接(link)它就可以,不必重复的占用磁盘空间。

比如:ln -srf build/soong/root.bp Android.bp

3,出现oversize超了的错误,说明要修改默认配置。

解决办法:

因为默认是16G内存,所以需要修改配置。

修改Jack的配置文件prebuilts/sdk/tools/jack-admin

JACK_SERVER_COMMAND="java -XX:MaxJavaStackTraceDepth=-1-Djava.io.tmpdir=$TMPDIR $JACK_SERVER_VM_ARGUMENTS -Xmx3000m-cp$LAUNCHER_JAR $LAUNCHER_NAME"

先停止服务./prebuilts/sdk/tools/jack-admin stop-server 重新开始服务./prebuilts/sdk/tools/jack-admin start-server

最后终于编译通过!

附录:jack的错误往往很纠结,可以参照:

大家都遇到过一些什么有趣且能涨知识的问题呢,欢迎讨论!

本文分享自微信公众号 - 安智客(china_safer)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2018-05-18

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Keystore的技术演进之路

    Android提供的keystore功能发展历程伴随着Android版本不断演进。 ? 从 Android 6.0 之前的版本中,Android已有一个非常简单...

    安智客
  • Android系统如何得知硬件安全能力?

    借助系统芯片 (SoC) 中提供的可信执行环境,Android 设备可以为 Android 操作系统、平台服务甚至是第三方应用提供由硬件支持的强大安全服务。

    安智客
  • 定义AI手机?---中国电信AI手机白皮书

    上周,中国电信发布了中国电信AI手机白皮书,正式名字是《中国电信移动终端需求白皮书-AI手机分册》,全面阐述了中国电信对AI手机的理解与需求,从AI算力、AI能...

    安智客
  • 提示为 64 位版本的 Android Studio 和 Android 模拟器做好准备

    今后,我们将仅支持 64 位版本的操作系统,为了尽可能降低此项变更对您的影响,我们采取的第一个措施便是将 32 位版本设置为弃用 (deprecate)。在弃用...

    Android 开发者
  • flutter doctor 时 提示 Flutter requires Android SDK 28 and ...【flutter】

    2、安装Android BuildTools version 28.0.3 操作步骤与路径:

    sinnoo
  • [Spring] 30个类手写 Spring Mini 版本系列(一)

    为了更深入的了解 Spring 的实现原理和设计思想,一直打算出个系列文章,从零开始重新学习 Spring。有兴趣的小伙伴可以持续关注更新。

    架构探险之道
  • 打开Android Studio报错“Error running ***: Please select Android SDK”

    今天打开Android Studio编译项目正常,但在执行Run app的时候莫名其妙弹出配置对话框,一看SDK配置没什么问题,就直接单击“Run”按钮,谁料下...

    用户4464237
  • .Net 转战 Android 4.4 日常笔记(1)--工具及环境搭建

    闲来没事做,还是想再学习一门新的技术,无论何时Android开发比Web的开发工资应该高40%,我也建议大家面对移动开发,我比较喜欢学习最新版本的,我有java...

    用户1149182
  • Android 手机开机密码破解锁定

    Android 手机使用Pattern图案加密后,如果忘记密码或多次解锁失败后,会被google自动锁定,无法再次进入开机首页。

    阳光岛主
  • Tomcat8如何解决上传文件的可读权限问题

    使用springmvc做了一个文件上传的功能,上传到nginx目录下的一个文件夹,但是通过目录访问的时候却报403的错误

    一觉睡到小时候

扫码关注云+社区

领取腾讯云代金券