说明
本篇文档记录了基于 buildroot 更换 swupdate 软件包的流程,包含有移植方法及移植过程中出现的问题处理。有类似 buildroot 下移植软件包的问题,可参考本文章。
背景
因功能需求,需要更换 buildroot 默认下载的 swupdate 软件包:当前使用的 buildroot 版本为2019.02,buildroot 默认下载的 swupdate 软件包版本为2018.11。
软件包更新替换流程
推荐替换方法:下载新版本的buildroot;用新版本 buildroot-xxx/package/swupdate 目录下的文件替换旧版本同目录下的文件(全部替换后,新版本不需要的或旧版本需要保留的文件,可通过更改swupdate.mk文件来适配)
软件包版本可在 buildroot-xxx/package/swupdate/swupdate.mk 中查看:
buildroot下载地址:Index of /downloads (buildroot.org)
博主下载的是 2023.02 版本的 buildroot,这一版 buildroot 默认下载 2022.12 版本的 swupdate 软件包。
这里多提一嘴,因为 buildroot 默认下载的软件包版本,都是低于 buildroot 日期的;所以如果有可能,尽量直接更换新版本的 buildroot,而不是 buildroot 下的软件包;这样就可以让 buildroot 自行去处理软件包之间可能存在的依赖关系,而不需要自己手动去解决,一般移植软件包遇到的大多数问题,就是软件包之间的依赖。博主这次移植过程中,就是因为在旧版本 buildroot 的基础上使用新版本的 swupdate 包,才有了这篇文章的出现~
这里分两步来进行:
1. 首先直接编译swupdate,确保能编译通过。
2. 编译通过后,再加入自己的需求功能。