瑞芯微RK3588 Android12系统编译报错问题及处理

文章讲述了在瑞芯微RK3588开发环境中遇到Android12系统编译错误,怀疑是内存容量不足。通过增大交换内存解决编译问题的过程,包括检查现有交换区、创建新交换文件、设置权限和激活,以及将设置写入/etc/fstab以实现永久生效。
摘要由CSDN通过智能技术生成

瑞芯微RK3588 Android12系统编译过程中报如下错误:

查看编译log:

发现环境至少需要的内存容量为16GB,更换16GB+硬件平台,重新搭建环境。

重新编译报同样的错误,查看编译log:

怀疑还是内存容量太小的问题,根据提示尝试修改build.sh中 Function build_android() -j参数:

更改为make -j4  甚至是-j3编译失败问题依旧。由于硬件受限,只能尝试增加交换内存空间。

增加交换内存空间步骤如下:

接下来增加交换内存。配置交换内存,需要用户根据自己的实际情况进行配置。这里举例分配  5G  交换内存。 在开始之前,使用命令检查一下您的 ubuntu  的  swap  分区,可以看到交换分区为  2G  ,如下图所示:

sudo swapon --show

 https://i-blog.csdnimg.cn/blog_migrate/c3895647c75dd1b38aca459df883e922.png 

然后通过以下命令创建一个用于 swap 的文件,此时可能会显示“fallocate:fallocate failed:Text file busy”如下图所示:

 https://i-blog.csdnimg.cn/blog_migrate/48bd1ca4972d237c1531a6274d84e809.png

  执行以下命令关闭系统交换分区,如下图所示:

  https://i-blog.csdnimg.cn/blog_migrate/3dc709c1bf2ef0721872d861d7881a44.png

   然后再次执行以下命令创建一个用于  swap  的文件:

   https://i-blog.csdnimg.cn/blog_migrate/5974353d6b729f11d2a1ee6e5c04e65c.png

   执行以下命令为 swapfile 文件设置正确的权限:

  https://i-blog.csdnimg.cn/blog_migrate/87870c884e5373928438f426367b390f.png

   使用mkswap 实用程序在文件上设置 Linux SWAP区域:

  https://i-blog.csdnimg.cn/blog_migrate/86e64ec8f67d067a9f93844d6ab7c5b6.png

  使用以下命令激活 swap 文件: 

 https://i-blog.csdnimg.cn/blog_migrate/543d64d3c9f82d6b5a1bd59d1f662cbd.png

 要让创建好的 swap 分区永久生效,可以将 swapfile 路径内容写入到 /etc/fstab 文件当中:

 https://i-blog.csdnimg.cn/blog_migrate/d8ea60e027737b296c72bcc44b6d2ab4.png

 保存退出,然后重启系统,主要是看看/etc/fstab文件设置是否生效。使用 swapon 或 free 命令验证 SWAP 是否处于活动状态,如下所示: 

 https://i-blog.csdnimg.cn/blog_migrate/dd187b51dcc80e0048cf4d3e0ccbb8da.png

完成后重新./build.sh clean, ./build.sh可以正常编译。

  • 10
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值