
本文档由创龙科技研发,专为安路飞龙 DR1M90 FPSoC 产品打造,聚焦 Linux 系统全流程开发需求。
Windows开发环境:Windows10 64bit
Linux开发环境:VMware16.2.5、Ubuntu22.04.4 64bit
LinuxSDK开发包:LinuxSDK-[版本号](基于SDK_2025.1)
交叉编译工具链:
应用开发:gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu
U-Boot、内核开发:gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu
评估板系统版本:U-Boot-2021.01、Linux-6.1.111、Buildroot-2022.02
备注:本文基于8GByte eMMC、1GByte DDR3配置核心板进行演示
Rootfs(根文件系统)是Linux内核启动后挂载的第一个文件系统,它包含了Linux系统启动和运行所必需的所有文件和目录。我司的根文件系统基于LinuxSDK源码的buildroot进行编译开发。

如需修改配置文件,请参考“配置Buildroot”章节。
配置完Rootfs后,在LinuxSDK源码目录下执行如下命令,配置编译选项,单独编译文件系统。
Host# cd /home/tronlong/DR1/SDK_2025.1/
Host# ./build.sh buildroot

编译完成后,最终在LinuxSDK源码"/device/output/anlogic_dr1m90/buildroot/images"目录下生成Rootfs镜像如下所示。

我司已提供文件Rootfs镜像文件,位于产品资料“4-软件资料\Linux\Filesystem\image\buildroot-202202-[版本号]-[Git系列号]\”目录下。
如需修改Rootfs,请参考《Linux系统固化手册》解压制卡工具包,并将"mksdboot_AA_BB_CC_DD/filesystem/rootfs/"目录下的rootfs.tar替换为需更新的rootfs.tar,再参考《Linux系统固化手册》制作Linux系统启动卡或固化Linux系统至eMMC即可。

请将产品资料“4-软件资料\Demo\base-demos\led_flash\bin\”目录下的可执行文件拷贝至评估板文件系统目录下。
执行如下命令,新建一个开机自启动脚本文件。
Target# vi /etc/init.d/S99led_control

在脚本文件中添加如下内容。
/root/led_flash -n 1 &

添加内容完成后,保存并退出。执行如下命令修改开机自启动脚本文件权限。
Target# chmod 777 /etc/init.d/S99led_control
Target# sync

请将评估板断电重启,Linux系统将会自动运行程序,调试串口终端将打印如下类似信息,同时可观察到评估底板LED2进行闪烁。

如需取消程序开机自启动功能,请将开机自启动脚本文件删除即可。
Target# rm /etc/init.d/S99led_control

请将产品资料“4-软件资料\Demo\base-demos\led_flash\bin\”目录下的可执行文件拷贝至LinuxSDK源码的"device/output/anlogic_dr1m90/buildroot/target/root"目录下。
执行如下命令,进入LinuxSDK目录下的rcS配置文件。
Target# vim device/output/anlogic_dr1m90/buildroot/target/etc/init.d/rcS

在rcS配置文件中添加如下内容。
/root/led_flash -n 1 &

修改完成后,保存并退出。请参考“编译LinuxSDK”章节重新编译LinuxSDK,rootfs.tar将会在LinuxSDK源码的"device/output/anlogic_dr1m90/buildroot/images/"目录下生成。请参考《Linux系统固化手册》解压制卡工具包,并将"mksdboot_AA_BB_CC_DD/filesystem/rootfs/rootfs.tar"替换成生成的rootfs.tar,最后参考《Linux系统固化手册》制作Linux系统启动卡或固化Linux系统至eMMC。将评估板断电重启,Linux系统将会自动运行程序,调试串口终端将打印如下类似信息,同时可观察到评估底板LED2进行闪烁。

如需取消程序开机自启动功能,修改"/etc/init.d/"目录下的rcS配置文件,注释以上所添加的内容即可。
Target# vi /etc/init.d/rcS

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。