迅为3568开发板Ubuntu编译环境搭建
如果您使用的是搭建好编译环境的 Ubuntu18.04 虚拟机镜像,在网盘资料“iTOP-3568 开发板\02_iTOP-3568 开发资料汇总(不含光盘资料)\02iTOP-3568 开发板搭建好编译环境的 Ubuntu18.04 虚拟机镜像”目录下,安装 jdk 和 android 源码依赖已经安装好了,不必重复安装。请根据您的电脑配置,参考本章节进行灵活配置。
1 电脑配置要求
编译 Android 11 对机器的配置要求较高:
1. 64 位 CPU
2. 16GB 物理内存+交换内存
1)Ubuntu 确认 cpu 位数,我们输入以下命令
getconf LONG_BIT
如上图所示,可以发现 Ubuntu18.04 是 64 位 CPU。
2 修改物理内存
打开虚拟机,如下图。单击红色框中的“虚拟机”。如下图所示:
然后点击“设置”弹出虚拟机的设置界面,如下图所示:
点击“内存”选项卡,然后设定物理内存。配置内存,需要根据用户实际情况进行配置。下面这台机
器中,显示最多可以设置 32G,这里分配 16G 的内存,内存必须为 4 的倍数(编译 Android 11 尽量多分
配内存)。如果大家的物理内存不够,可以参考下个小节分配交换内存。
3 增加交换内存
接下来增加交换内存。配置交换内存,需要用户根据自己的实际情况进行配置。这里举例分配 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
4 安装 JDK
1)Android11 系统编译依赖于 JAVA 8。编译 Android 之前需安装 OpenJDK。安装命令如下:
sudo apt-get install openjdk-8-jdk
执行结果,如下图:
2)如果您之前安装过其他版本的 JDK,需要进行版本切换。如果没有安装过,可以跳过此步骤,查看目前
已经安装在系统里的 Java 版本,使用以下命令:
update-java-alternatives -l
查看相应的 jdk(java javac 等)是否在 ubuntu 的 jdk 菜单里,查看切换命令 jdk 的命令,如下所示:
sudo update-alternatives --config java
输入 java8 对应的选择项,按回车进行确认。
3) 配置 Java 环境变量,Android11 源码里带有 Open JDK8 的配置脚本,在 Android11 源码根目录下,命名为
javaenv.sh。可直接执行以下命令,配置 JDK1.8
source javaenv.sh
输入以下命令查看 java 的版本,如果 Java 版本是 1.8 版本,接下来便可以编译 Android11 源码。