迅为IMX8MM开发板Android编译环境搭建
编译环境这里给大家提供了编译好的开发环境,我们可以在搭建好的编译环境中顺利编译成功,所以这里建议大家使用搭建好的环境。“搭建好编译环境的Ubuntu16.04”在网盘资料“i.MX8MM开发板\02-i.MX8MM开发板网盘资料汇总(不含光盘内容)\20210601\02_i.MX8MM开发板搭建好编译环境的Ubuntu16.04虚拟机镜像”目录下,使用我们提供的Ubuntu环境,可以直接参考第九章 Android固件编译进行编译Android9。
这个也给大家介绍了搭建好的环境是怎么从原生的环境中一步一步来的,如果大家要在自己的开发环境上搭建,也可以参考这个章节。但是由于大家自己用的Ubuntu的版本和我们不一样,可能中间会遇到形形色色的问题。这就需要一个很强的开发调试能力了,所以这里建议大家还是使用我们提供的搭建好的编译环境。
8.1 增加交换分区
1 )编译 Android 对机器的配置要求较高,注意:推荐电脑配置处理器:Core(TM) i7 内存:16G ,虚拟机硬盘 300G 以上,内存 8G 以上;
2)我们要确认当前Ubuntu系统的交换分区的大小,如果交换分区不足会造成Android源码编译失败,然后我们安装一个软件htop,来查看内存的使用情况,安装命令如下所示:
sudo apt-get install htop
3)然后输入“htop”运行软件,运行如下所示,输入“q”停止运行htop软件。
![](https://www.eechina.com/data/attachment/forum/202109/18/161232x3glrlhl4esteh3h.png)
4)从上图我们可以看到物理内存是11G,交换内存为0,在这里给大家做个示范增加5G交换分区。接下来增加交换内存。
5)通过以下命令创建一个用于 swap 的文件
sudo fallocate -l 5G /swapfile
执行以下命令为 swapfile 文件设置正确的权限:
sudo chmod 600 /swapfile
sudo mkswap /swapfile
使用以下命令激活 swap 文件:
sudo swapon /swapfile
![](https://www.eechina.com/data/attachment/forum/202109/18/161232frr2juu1u0uq1lwu.png)
6)要让创建好的 swap 分区永久生效,可以将 swapfile 路径内容写入到 /etc/fstab 文件当中:
sudo vim /etc/fstab
在/etc/fstab 文件最后添加如下内容:/swapfile swap swap defaults 0 0
![](https://www.eechina.com/data/attachment/forum/202109/18/161232rtlawllddflp3f3p.png)
7)使用 swapon 或 free 命令验证 SWAP 是否处于活动状态,如下所示:
sudo swapon --show
sudo free -h
![](https://www.eechina.com/data/attachment/forum/202109/18/161232ffhoz92e5e9zh5n9.png)
8.2 安装JDK
1)Android9 系统编译依赖于 JAVA 8。编译之前需安装 OpenJDK。安装命令如下:
add-apt-repository ppa:openjdk-r/ppa
apt-get update
apt-get install openjdk-8-jdk
执行结果,如下图所示:
![](https://www.eechina.com/data/attachment/forum/202109/18/161232jrzv1za1ryvu9evv.png)
![](https://www.eechina.com/data/attachment/forum/202109/18/161232sxo9eg9g2ggvrtky.png)
![](https://www.eechina.com/data/attachment/forum/202109/18/161232nspppv8ww187ims4.png)
2)如果您之前安装过其他版本的JDK,需要进行版本切换。如果没有安装过,可以跳过此步骤,查看目前已经安装在系统里的Java版本,使用以下命令:
update-java-alternatives -l
![](https://www.eechina.com/data/attachment/forum/202109/18/161232pobmmpmn28nalll5.png)
3)查看相应的jdk(java javac等)是否在 ubuntu的jdk菜单里,查看切换JDK的命令,如下所示:
update-alternatives --config java
![](https://www.eechina.com/data/attachment/forum/202109/18/161233qmrrzac4qs78qzfq.png)
输入 java8 对应的选择项,按回车进行确认。
4 输入以下命令查看java的版本
java -version
![](https://www.eechina.com/data/attachment/forum/202109/18/161233t4071z8llzg1prru.png)