本帖最后由 qiao--- 于 2024-1-26 17:13 编辑
前言:
做开发第一件事当然是搭建开发环境,嵌入式Linux更是,因为它很依赖官方的SDK。我们一切的开发基础都是基于官方的SDK来进行开发的。也许有贴友会问,板子本来就有出厂镜像,为什么还要烧录一下镜像呢?再一次烧录镜像的原因有两点,一是自己也能学会烧录镜像这个过程,掌握开发的步骤;二是为了减少我们后期遇到的困难,因为官方也提示我们最好烧录一个镜像,见下图
1.开发环境搭建
创建一个文件夹方便放官方的SDK
在这个文件夹里面拉取官方的SDK
下面是我们拉取的SDK的目录结构
当我们运行SDK编译脚本的时候,镜像输出文件一般会放在output目录下,如下图所示
我们再在这个文件夹里面创建一个workspace,方便以后方我们自己编写的代码
2.建立docker环境和编译
进入我们的虚拟机,我用的是Ubuntu18.4,但是文档上说主要支持Ubuntu 22.04版本,因此这里我用Docker 来进行编译。
先安装一下docker
- sudo apt install docker.io -y
运行以下命令将当前用户添加到docker组中:
- sudo usermod -aG docker $USER
运行以下命令使更改生效:
- sudo service docker restart
- newgrp docker
获取已经配置好的官方 Docker 镜像
- sudo docker pull luckfoxtech/luckfox_pico:1.0
更新一下我们步骤一拉取的SDK
- cd luckfox-pico
- git submodule update --init
启动一个交互式的容器,使用名为 "luckfox",并将本地主机上的 SDK 目录映射到容器内的 /home 目录,最后以 Bash shell 运行。
-
- sudo docker run -it --name luckfox -v /home/tang/linux/Luckfox_RV1106/luckfox-pico:/home luckfoxtech/luckfox_pico:1.0 /bin/bash
-
-
- sudo docker start -ai luckfox
-
-
- exit
安装必要的交叉编译工具链
- //在你拉取SDK的路径下
- cd tools/linux/toolchain/arm-rockchip830-linux-uclibcgnueabihf/
- source env_install_toolchain.sh
进入我们刚创建好的容器
- sudo docker start -ai luckfox
因为我们刚把SDK映射到了/home目录,这里我们进入/home目录直接编译
- cd /home
- ./build.sh lanch //我烧录进SPI_flash ,选择8
- ./build.sh allsave
这里我是让电脑编译我就去睡觉了,不是道编译了多长时间,时间应该不短,下面是我编译成功的界面
3.烧录
我们把我们SDK目录下的output/image文件夹拷贝到win系统下
烧录之前我们需要安装RK的驱动,我会把驱动放在附件下,直接点击安装,成功后需要重启一下电脑
然后用官方的烧录工具烧录,我会把烧录工具放在附件上,烧录时候需要安装板子的boot按键然后上电后松开进入烧录模式,此时界面usb设备处会有下方的显示
我们按照下方的烧录步骤进行烧录
4.烧录镜像成果展示
按照我们第一期测评的方法用串口访问系统,用户名用root,密码是luckfox,成功进入系统
下面可以看到我系统编译的时间是2024年1月26日
总结:通过本期测评我成功烧录了系统镜像,官方很贴心的提供了docker环境,可以方便我们在任何环境下编译镜像。这款开发板提供的资料也非常的完整,烧录脚本也写的非常全面,不管是单独编译某个uboot啊或者kernel啊,还是全部编译进行打包都能用一个命令轻松实现,烧录过程也非常的轻松,总体下来感觉不错。
附件: