本篇操作参照Luckfox Wiki SDK环境部署:
https://wiki.luckfox.com/zh/Luckfox-Pico/Luckfox-Pico-SDK
1、Ubuntu 20.04虚拟机部署环境
Wiki上提到Luckfox Pico系统主要支持Ubuntu 22.04,本人机器上是20.04,目前测试可以兼容。
首先是安装依赖环境:
sudo apt update
sudo apt-get install -y git ssh make gcc gcc-multilib g++-multilib module-assistant expect g++ gawk texinfo libssl-dev bison flex fakeroot cmake unzip gperf autoconf device-tree-compiler libncurses5-dev pkg-config bc python-is-python3 passwd openssl openssh-server openssh-client vim file cpio rsync
然后,就是获取SDK,建议从gitee获取:
git clone https://gitee.com/LuckfoxTECH/luckfox-pico.git
2、编译镜像
编译工作首先需要选定SDK配置文件(*.mk文件),相关文件位于:../luckfox/luckfox-pico/project/cfg/BoardConfig_IPC,共有九种:
图2-1 SDK配置文件
Pro Max型共有两个配置文件,分别支持NAND Flash介质Buildroot系统和EMMC(即TF卡)介质Ubuntu系统,如果要编译支持TF卡的Buildroot镜像或支持NAND的Ubuntu镜像,可以通过修改配置文件来实现,具体可以参考Wiki。
不过这里本人粗心大意了,Ubuntu的配置文件默认从github上拉取Ubuntu系统源码,所以开始尝试编译Ubuntu镜像时总是因为连接超时退出,自己还去分析build.sh(就是整个SDK的构建脚本),实际上Wiki说明了修改配置文件换源的方法。
图2-2 分析build.sh发现“LF_SUBMODULES”变量
直到发现“LF_SUBMODULES”变量名,想到在Wiki文档上见到过,于是回去翻网页。
图2-3 关于配置文件修改方法的文档截图
图2-4 修改配置文件BoardConfig-EMMC-Ubuntu-RV1106_Luckfox_Pico_Pro_Max-IPC.mk
修改了配置文件,于是开始编译过程,即准备编译TF卡Ubuntu镜像,回到SDK根目录执行命令:
#编译ubuntu
sudo ./build.sh lunch
sudo ./build.sh
sudo ./build.sh lunch命令就是选择配置文件,然后sudo ./build.sh开始了长达3小时的编译过程。
最终的镜像文件位于“../luckfox-pico/output/image”目录。
图2-5 sudo build.sh lunch并选择5(EMMC-Ubuntu For Pro Max)并编译
3、烧写镜像
将编译好的镜像先导到本机的Win10系统,然后下载并解压瑞芯微的烧录工具SocToolKit(绿色版,解压即用)。
编译的全部*.img,烧写时除去update.img,其它的都要选上——如果选了update.img烧写时会报错提示剔除。
图2-6 烧写镜像
Pro Max板上集成NAND Flash出厂自带Buildroot系统,不过插上烧写了Ubuntu的TF卡,板子会优先从TF卡加载系统,这样省大事了。Ubuntu镜像板子静态IP为172.32.0.70,依然是通过Type-C数据线连接PC机启动系统,然后SSH登录进行测试。
图2-7 ssh登录Ubuntu