编译android7硬件,编译Android 7.0遇到的问题

硬件平台:rk3128

Android版本:7.0

kernel版本:3.10.104

ubuntu版本:ubuntu 16.04

一、

问题描述:编译kernel时错误:/bin/sh: 1: lzop: not found

解决方法:这个碰到过好多次了,安装即可:sudo apt-get install lzop

二、

问题描述:编译android报错

Out of memory error (version 1.2-rc4 'Carnac' (298900 f95d7bdecfceb327f9d201a1348397ed8a843843 by android-jack-team@google.com)).

GC overhead limit exceeded.

Try increasing heap size with java option '-Xmx'.

Warning: This may have produced partial or corrupted output.

解决方法:这个网上已经有很多了,解决办法是打开prebuilts/sdk/tools/jack-admin

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

修改为

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

但是编译始终还是有问题,报如下错误:

FAILED: /bin/bash -c "(mkdir -p out/target/common/obj/JAVA_LIBRARIES/sdk_v22_intermediates/classes.jack.tmpjill.res ) && (unzip -qo prebuilts/sdk/22/android.jar -d out/target/common/obj/JAVA_LIBRARIES/sdk_v22_intermediates/classes.jack.tmpjill.res ) && (find out/target/common/obj/JAVA_LIBRARIES/sdk_v22_intermediates/classes.jack.tmpjill.res -iname \"*.class\" -delete ) && (JACK_VERSION=3.36.CANDIDATE out/host/linux-x86/bin/jack @build/core/jack-default.args --verbose error -D jack.import.resource.policy=keep-first -D jack.import.type.policy=keep-first -D jack.android.min-api-level=1 --import prebuilts/sdk/22/android.jar --import-resource out/target/common/obj/JAVA_LIBRARIES/sdk_v22_intermediates/classes.jack.tmpjill.res --output-jack out/target/common/obj/JAVA_LIBRARIES/sdk_v22_intermediates/classes.jack ) && (rm -rf out/target/common/obj/JAVA_LIBRARIES/sdk_v22_intermediates/classes.jack.tmpjill.res )"

java.lang.AssertionError

at com.android.sched.scheduler.MultiWorkersScheduleInstance.process(MultiWorkersScheduleInstance.java:523)

at com.android.jack.Jack.run(Jack.java:738)

at com.android.jack.Jack.checkAndRun(Jack.java:412)

at com.android.jack.CommandLine.runJack(CommandLine.java:79)

at com.android.jack.api.v01.impl.Cli01CompilationTaskImpl.run(Cli01CompilationTaskImpl.java:85)

at com.android.jack.server.tasks.JackTask.handle(JackTask.java:168)

at com.android.jack.server.tasks.SynchronousServiceTask.handle(SynchronousServiceTask.java:49)

at com.android.jack.server.tasks.JackTask.handle(JackTask.java:55)

at com.android.jack.server.router.PathRouter.handle(PathRouter.java:65)

at com.android.jack.server.router.ContentTypeParameterRouter.handle(ContentTypeParameterRouter.java:84)

at com.android.jack.server.router.ContentTypeRouter.handle(ContentTypeRouter.java:82)

at com.android.jack.server.router.ContentTypeRouter.handle(ContentTypeRouter.java:82)

at com.android.jack.server.router.ContentTypeRouter.handle(ContentTypeRouter.java:82)

at com.android.jack.server.router.ContentTypeParameterRouter.handle(ContentTypeParameterRouter.java:84)

at com.android.jack.server.router.ContentTypeRouter.handle(ContentTypeRouter.java:82)

at com.android.jack.server.router.ContentTypeRouter.handle(ContentTypeRouter.java:82)

at com.android.jack.server.router.MethodRouter.handle(MethodRouter.java:67)

at com.android.jack.server.router.RootContainer.handle(RootContainer.java:49)

at org.simpleframework.http.core.RequestDispatcher.dispatch(RequestDispatcher.java:121)

at org.simpleframework.http.core.RequestDispatcher.run(RequestDispatcher.java:103)

at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)

at java.lang.Thread.run(Thread.java:748)

Internal compiler error (version 1.2-rc4 'Carnac' (298900 f95d7bdecfceb327f9d201a1348397ed8a843843 by android-jack-team@google.com)).

Warning: This may have produced partial or corrupted output.

[ 31% 11462/35877] build out/target/common/obj/JAVA_LIBRARIES/sdk_v18_intermediates/classes.jack

ninja: build stopped: subcommand failed.

build/core/ninja.mk:148: recipe for target 'ninja_wrapper' failed

make: *** [ninja_wrapper] Error 1

查了好久也没有结果,因为我的电脑内存只有4G,我就想会不会是4G太大了,然后改成-Xmx2g,还是会报OOM错误,最后改成-Xmx3g,编译通过,看来是电脑配置太低的原因。

对了修改完后要先停止服务:./prebuilts/sdk/tools/jack-adminstop-server

三、我把android 7.0源码下的.repo删除后,编译也会报错,难道必须有.repo或.git目录才可以吗?

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值