请教一下:编译mkq-mr1遇到的 内存溢出 的问题

在同步完成mkq-mr1的源码后,我想要编译下个锤子T1。鼓捣了几天之后还是解决不了, :sweat_smile:

在导演的T1开源项目中看到了有mkq-mr1的分支,应该是可以直接编译的吧?
执行了lunch mokee_sfo-userdebug之后,下载完后执行mka bacon。

遇到的第一个错误,应该是编译framework出错了

第二个错误高亮

最后提示说是内存溢出

百度了好几天,大概的解决方向:
1.就是扩大编译时使用的内存空间。

export JACK_SERVER_VM_ARGUMENTS="-Dfile.encoding=UTF-8 -XX:+TieredCompilation -Xmx4096m"
然后重启jaker admin或者修改它的参数。

但是我的源码目录下没有jaker admin ,百度了这个情况也是没有解决方法。

2.限制cpu

就是使用make -j1去编译,防止内存溢出。不行。

3.修改soong中的参数。不行
https://stackoom.com/question/3v7vy/Metalava错误-内存不足错误-Java堆空间


然后repo sync时就会

请问导演这是什么问题导致的呢?

@XiNGRZ

我是直接物理加到64G 就没问题了 :joy:

哈哈哈哈,那能行马

我现在环境Ubuntu20 64G内存 刚开始32G内存也是各种问题 改环境变量编译还过了一次 :grin:

我刚看了半天觉得好像和openjdk有关系,你的环境变量是咋改的呢,你也遇到了这个问题马

@XiNGRZ
求助导演

电脑内存太少。至少要16G。

我下载的安装包 安装的openjdk-8 jdk jre jre-headless

我之前编译成功过mkp的源码,可能就是内存的问题,我又下载了mkp的源码,也编译成功了.第一步成功了,再慢慢学习哇

不知道Android 10做了什么改动
16G ram的电脑第一次编译到metalava时就会溢出,第二次编译就不会了
32G ram就没这个问题