Bootstrap

【北京迅为】《iTOP-3588开发板源码编译手册》-第一章 编译环境Ubuntu20.04编译配置

RK3588是一款低功耗、高性能的处理器,适用于基于arm的PC和Edge计算设备、个人移动互联网设备等数字多媒体应用,RK3588支持8K视频编解码,内置GPU可以完全兼容OpenGLES 1.1、2.0和3.2。RK3588引入了新一代完全基于硬件的最大4800万像素ISP,内置NPU,支持INT4/INT8/INT16/FP16混合运算能力,支持安卓12和、Debian11、Build root、Ubuntu20和22版本登系统。了解更多信息可点击迅为官网   

【粉丝群】824412014

【实验平台】:迅为RK3588开发板

【内容来源】《iTOP-3588开发板源码编译手册》

【全套资料及网盘获取方式】联系淘宝客服加入售后技术支持群内下载

【视频介绍】:【强者之芯】 新一代AIOT高端应用芯片 iTOP -3588人工智能工业AI主板


第一章 编译环境Ubuntu20.04编译配置

编译 android 或者 Linux 对编译环境环境 Ubuntu20.04 有一些配置要求,下面我们根据如下图所示的流程图来进行配置。 首先需要扩大内存,如果能分配给 Ubuntu20.04 的物理内存大于 20G,则参考本小节“修改物理内存”小节进行修改。如果物理内存不够 20G,需要增加交换内存,参考“增加交换内存”小节进行修改。

接下来扩大硬盘,扩大硬盘有俩种方法,任选其中一种方法即可。扩大完硬盘,安装编译源码需要的依赖包,然后便可以愉快的编译了。

1.1 默认Ubuntu配置功能

为了方便客户使用和快速开发,迅为提供的编译环境Ubuntu20.04已经配置好了如下功能。

迅为提供的编译环境Ubuntu20.04网盘下载路径为:

“iTOP-3588开发板\02_【iTOP-RK3588开发板】开发资料\02_iTOP-3588开发板搭建好编译环境的Ubuntu20.04虚拟机镜像”

编译android或者Linux对编译环境环境Ubuntu20.04有一些配置要求,下面我们根据如上文所示的流程图来进行配置。

首先需要扩大内存,如果能分配给Ubuntu20.04的物理内存大于20G,则参考“1.2修改物理内存”小节进行修改。如果物理内存不够20G,需要增加交换内存,参考“1.3增加交换内存”小节进行修改。

接下来扩大硬盘,扩大硬盘有俩种方法,任选其中一种方法即可。成功扩展硬盘之后,可以进行编译源码。

1.2 修改物理内存

打开虚拟机,单击红色框中的“虚拟机”。如下图所示:

然后点击“设置”弹出虚拟机的设置界面,如下图所示,点击“内存”选项卡,然后设定物理内存。配置内存,需要根据用户实际情况进行配置。下面这台机器中,显示最多可以设置 32G,这里分配 24G 的内存,内存必须为 4 的倍数。

注意! 大家编译源码的时候,分配虚拟机内存最少要设置为20G,如果您的物理内存低于20G,建议增加内存条。

如果编译Android源码,虚拟机ubuntu中其他软件运行也会占用一部分内存,Android源码可能会因为内存不够而编译失败,可以参考下个小节1.3分配交换内存 

1.3 增加交换内存

迅为提供的编译环境Ubuntu20.04默认配置了交换内存是9G,如果在编译过程中,因内存不够而编译报错,可以参考本小节进行设置。

这里举例分配5G交换内存。

在开始之前,使用命令检查一下您的ubuntu的swap分区。

sudo swapon --show

通过以下命令创建一个用于 swap 的文件

sudo fallocate -l 5G /swapfile

注意,此时可能会显示

fallocate:fallocate failed:Text file busy

此时,执行以下命令:

sudo swapoff -a

然后再执行以下命令:

sudo fallocate -l 5G /swapfile

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

sudo chmod 600 /swapfile

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

    sudo mkswap /swapfile

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

sudo swapon /swapfile

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

sudo vim /etc/fstab

在/etc/fstab 文件最后添加如下内容:

/swapfile swap swap defaults 0 0

 

使用 swapon 或 free 命令验证 SWAP 是否处于活动状态,如下所示:

sudo swapon --show

sudo free -h

 

1.4 扩展磁盘空间

1.首先需要在 VM 上进行磁盘扩容,先将虚拟机关机,然后点击虚拟机-->设置,如下图所示:

2 选中默认的硬盘50GB,扩展磁盘容量,点击“扩展”按钮,如下图所示: 

3 接下来出现设置界面,如下图所示,此处以扩展到300G为例。 

 

如果只是编译Android12源码,分配虚拟机磁盘大小为500G即可,大家可以根据自己的实际情况分配。

如果只是编译Linux源码,分配虚拟机磁盘大小为300G即可,大家可以根据自己的实际情况分配。

4 此时在 VM 提示磁盘扩展完成 ,接下来就需要进入 Ubuntu 重新划分磁盘

5 我们对Windows 磁盘进行分区等操作时一般会借助于一些软件进行磁盘分区的合并会拆分等,同样,在Ubuntu下也借助于该类型的软件帮助我们更好的实现磁盘的重新分区以及扩展文件系统,我们使用的软件是 gparted。打开虚拟机,在终端中输入以下命令安装gparted

sudo apt-get install gparted

6 输入以下命令运行 gparted , 运行结果如下图 

sudo gparted

 

此时,我们发现右边灰色区域有未分配的区域

7点击/dev/sda1一栏,然后点击菜单栏上的重新给/dev/sda1划分大小。这里调整为285G ,即291839M ,剩余 15G 作为 swap 区。主分区就增加到 258G,如下图所示:

8选中未分配的区域,点击右键,选中新建,如下图所示: 

 9 然后增加扩展分区,大小默认即可,如下图所示:
 

10接着再增加交换分区,选中未分配区域,点击鼠标右键,然后点击“New”,如下图所示。 

11 点击新建以后出现下图界面大小默认即可,类型选择逻辑分区 ,文件系统选择 linux-swap,修改完点击 add,如下图所示: 

12 然后点击“√”,保存修改,如下图所示: 

13 扩展磁盘完成,我们终端输入df命令查看,如下图所示: 

1.5 扩展硬盘空间

在上一章节中,我们对/dev/sda的硬盘进行了扩展。但是存在一个问题,硬盘扩展后变大,如果编译完源码,不需要这么大的空间了,是不能缩小的。所以推荐大家添加一个新硬盘来存放android源码或者Linux源码,这样的话,如果不需要使用这个硬盘了,可以直接移除。

1.首先在虚拟机里面关闭 Ubuntu 系统,然后点击虚拟机-->设置,如下图所示:

2.然后弹出“虚拟机设置”对话框,然后点击“添加”按钮,如下图所示:

3.弹出如下界面,选择硬盘,然后点击“下一步”如下图所示:

4.弹出如下界面,默认选择,点击“下一步”,如下图所示:

5.弹出如下界面,按照下图的设置,然后单击“下一步”按钮,如下图所示:

 

6.弹出如下界面,按照下图的设置,其中红色方框内是设置需要扩展的硬盘的大小,这里我们选择 700G(可以根据需要来修改这个值),然后单击“下一步”按钮,如下图所示: 

7.弹出如下界面,下图中红色框内的文件是用于保存扩展硬盘的信息,文件的名字和保存的路径可以自定义,确定好文件名字和保存路径后,点击"完成"按钮,如下图所示: 

8.然后回到“虚拟机设置”对话框,在这个对话框会看到添加的硬盘的信息,如下图所示: 

9.点击“确定”按钮,接下来要进入 Ubuntu,把新的硬盘 mount 进去,启动 Ubuntu 系统,以 root 用户登录,如下图所示:

10.在上图中的超级终端里输入:“fdisk -l”,我们将会看到添加的新的硬盘/dev/sdb 的信息,如下图所示: 

 

11. 在上图的超级终端里输入“mkfs -t ext4 /dev/sdb”,把新添加的硬盘格式化成 ext3 格式,如下图所示: 

 

12.在/home/topeet目录下建立 Android文件夹,如下图所示: 

13.输入“mount /dev/sdb Android/”,挂载硬盘到 Android 目录,如下图所示: 

 

14  除了使用上述命令挂载硬盘之外,我们还可以通过Ubuntu自带的图形化Disks工具来进行硬盘的挂载具体方法如下:

  1. 首先按windows键输入Disks即可找到这个App,打开Disks工具,选择新的硬盘,点击齿轮按钮,选择edit mount options如下图所示:

 

  1. 显示如下界面,关闭Defaults,自己给定挂载点为/home/topeet/Android

 

  1. OK之后点击三角形的挂载按钮(一定别忘了)如下图所示:

 

  15 使用 “df -l” 命令查看一下挂载情况,如下图所示:

16  通过上图可以看到新扩展的硬盘已经挂载到了/home/topeet/Android 目录下面了,下面修改 Ubuntu 系统的配置文件,实现开机自动挂载,使用命令 “vi /etc/fstab” 打开 fstab 文件,参照里面的格式,添加挂载新硬盘的命令,如下图所示:

/dev/sdb /home/topeet/Android ext4 defaults 0 0

17 保存上图修改的文件,开机启动自动挂载设置完成。至此 Ubuntu 扩展硬盘的方法已经完成。 

;