配置产出案例的文件系统镜像
文档介绍如何编译构建出文件系统镜像。
适用场景
适用于需要配置案例通过CMake编译出文件系统的场景。
所需条件:
- 案例源码目录下已存在
rootfs/CMakeLists.txt。尚无rootfs/CMakeLists.txt的案例需参照已有案例自行添加。
步骤
以下内容以Hispark SDK 为例介绍,其他版本 SDK 可进行内容参考。
创建或修改 rootfs 的编译文件
对于不存在 rootfs/CMakeLists.txt 的案例,需要模仿其他案例编写以下内容:
rootfs/CMakeLists.txt的rootfs_prepare部分:将文件放入打包前的临时文件系统rootfs/CMakeLists.txt的install命令部分:执行真正的文件系统镜像构建- 在案例自身的总 CMakeLists.txt 尾部,将 rootfs 目录加入编译链。
开启编译出文件系统选项
临时配置方法: 执行 menuconfig,进入 TUI 界面:
依次进入以下菜单,开启编译文件系统所需的选项:
- 开启BSP编译:SDK Build -> Build BSP
- 编译完成后自动进行安装:Build-> Run cmake --install after build
保存退出后,menuconfig 自动更新 .config、.config.cmake 和 .target。
执行以下命令编译:
⚠️ 不要加
--target指定编译,避免选项被覆盖。 若需持久化该配置,去源码目录修改app.defconfig的对应选项: 开启 BSP 编译:CONFIG_SDK_BUILD_BSP编译完成后自动进行安装:CONFIG_BUILD_INSTALL
将编译产物打包进镜像
⚠️ 注意:编译产物不会自动进入 rootfs 镜像——镜像中具体包含哪些文件,由案例 rootfs/CMakeLists.txt 中的 rootfs_prepare 部分决定。
如需将新增的编译产物打包进镜像,需参考其他案例的 rootfs/CMakeLists.txt
修改源码的rootfs_prepare部分,实现将编译产物打包进文件系统。
然后执行命令。
验证
_build/install/目录下生成烧录镜像文件,包含uImage、分区表等- BSP的产物路径存在
uImage