项目简介
本项目是一个用Python编写的工具,用于生成嵌入式系统的固件更新文件。它支持jffs2和squashfs两种格式的blob文件,可根据用户提供的驱动路径、网络配置文件等参数生成对应的固件更新文件。
项目的主要特性和功能
- 支持jffs2和squashfs两种文件系统格式,满足不同嵌入式系统的需求。
- 能够根据用户提供的路径,灵活地将网络配置文件、驱动文件等复制到临时文件夹。
- 可以利用指定的文件夹路径生成相应格式的固件更新文件。
- 使用Python的argparse库解析命令行参数并执行对应操作。
- 自动创建临时文件夹存放复制的文件,在生成固件更新文件后清理临时文件夹。
安装使用步骤
ARM平台构建系统(若适用)
此构建系统适用于基于Debian的发行版,已在Ubuntu 18.04和20.04上测试,编译SDK需要root权限。
1. 下载第三方源包到smartnic_soc_sdk。
2. 将第三方源包重命名为preseed.tgz。
3. 执行make defconfig
命令生成默认配置。
4. 执行make deps
命令安装缺失的构建依赖。
5. 将需要包含在RootFS中的Debian包复制到imports/debian文件夹,例如cp *.deb imports/debian/
。
6. 在imports/debian/install.list文件中列出需要预安装的包。
7. 使用预种子文件避免再次下载第三方源代码,执行make import-downloads
。
8. 开始编译,全新检出的构建大约需要2小时,执行make
和make boot
。
9. 编译成功后,镜像将位于build/lx2162a/boot/目录中。
10. 参考SN1000安装和用户指南安装SoC镜像。
固件更新生成工具
- 假设用户已经下载了本项目的源码文件。
- 安装Python环境,并安装项目所需的依赖库,如os、json、re、time、argparse等。
- 通过命令行运行工具,提供必要的参数,如驱动路径、网络配置文件等。
- 工具根据提供的参数,生成jffs2或squashfs格式的固件更新文件。
- 生成固件更新文件后,工具会自动清理临时文件夹。
注意:运行工具前,需要确保已经安装Python环境,具备基本的Python编程知识,并按照工具说明提供正确的参数,以保证生成正确的固件更新文件。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】