文档中推荐使用 Ubuntu 18.04 LTS 编译,但毕竟 18.04 已经停止了技术支持,最好还是尽快转移到 22.04 上 升级到 22.04 好处还是很多的,主要是遇到问题你可以搜得到,WiFi、触控板的驱动支持对于近几年的新电脑还是不错的.
调整系统交换空间 首先要说的是系统环境要求,内存 16GB 是至少的,虚拟机的性能释放跟实体机编译没法比。
如果本身电脑 16 GB 内存还是使用虚拟机编译,毕竟 Windows 自身空载也会占用,可能够呛。
编译 Android 时务必修改 Ubuntu 的交换空间,默认 2GB 绝对不够(对于系统内存16GB),可以调整到 8GB 或者 16 GB,最好在编译前就调整交换空间,以防之后编译报错命令别照搬 文档中的命令要学会变通最好能了解每一步的含义,对于【Android】系统SDK编译,其实可以换成以下
cd u-boot && ./make.sh rk3566 && cd ../kernel && make clean && make distclean && make ARCH=arm64 tspi_defconfig rk356x_evb.config android-11.config && make ARCH=arm64 tspi-rk3566-user-v10.img -j$(nproc) && cd .. && source build/envsetup.sh && lunch rk3566_tspi-userdebug && make installclean -j$(nproc) && make -j$(nproc) && ./mkimage.sh
试试看看 echo $(nproc)
的执行结果,你就能知道为啥可以换成这样更加适用。
- Python 编译的问题集中在 Python的版本上 18.04 执行代码
sudo apt install python
安装的Python版本是 2.7,但是22.04 中,python
命令默认指向python3
- Python 2 已于 2020 年 1 月 1 日停止维护,这意味着它不再接收安全更新或者新功能
- Python 3 它包含了许多改进和新特性。Python 3 的语法更加清晰,错误消息也更加友好
- 以下命令适合 22.04 使用
#安卓编译 环境安装
sudo apt install -y git python2.7 make openjdk-8-jdk git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev libgl1-mesa-dev gcc-multilib g++-multilib libc6-dev-i386 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z1-dev libxml2-utils xsltproc unzip python2.7 bc imagemagick ccache schedtool libssl-dev libncurses5-dev clang
2
Linux 的命令按照文档直接复制进去也没啥问题,先安装安卓的编译环境再搞 Linux 就没啥问题
A. 前面的 repo 签出如果遇到问题,参考吴工的教程使用版本控制切换到 Python 2.6
B. 如果在编译安卓 repo 切换分支时还有可能遇到一次问题,会提示以下信息
总而言之,问题就是 ModuleNotFoundError:No module named 'formatter'
formatter 模块在 Python 3.4+ 中已被标记为废弃。而且好像手动切换版本到 Python 2.6 也不行
根据报错信息提示的位置并且按照下面的链接的方法,修改 help.py 文件即可。
【help.py】下载
📌 在 下载中心
->百度网盘(立创·泰山派开发板资料)
->第03章.【立创·泰山派】文档手册
->【共建】文档附件
->【共建】Ubuntu 22.04LTS编译
文件夹中。
- 编译 Linux 如果遇到问题(点击跳转) 可以使用以下方法解决
- 问题原因是多重定义 stackoverflow.com
- 解决方式:根据错误提示,找到对应文件夹修改文件 mksquashfs.h 在 136 行对应位置前添加 extern