【发布时间】:2018-08-16 14:15:50
【问题描述】:
我对 Buildroot 和 OpenWrt 感到困惑。我的意思是在哪种情况下人们会选择 OpenWrt 而不是 Buildroot。
据我了解,Buildroot 和 OpenWrt 之间只有 2 个区别
OpenWrt 提供包管理器(opkg),它不适用于 buildroot。
OpenWrt 为大多数网络相关设备(路由器、交换机等)提供了大量的软件包支持。
如果我的项目不需要任何包管理器,但我需要网络支持,那么我可以选择 Build root 而不是 OpenWrt,对吗? Buildroot本身就不能构建网络相关的包吗?
我的意思是,如果包管理器不是问题,我们可以继续使用 buildroot 本身,对吗?不需要选择 OpenWrt 吗?
如果我错了,任何人都可以解决 buildroot 失败而 Openwrt 获胜的情况吗?
我的意思是有可能用 Buildroot 本身来实现 OpenWrt 正在做的事情(为网络相关硬件构建固件映像)。我观察到 Buildroot 和 OpenWrt 的 init 进程(早期用户空间)行为是不同的。
- 在 Buildroot 中,初始化脚本将被读取
etc/inittab,init.d下的脚本将被执行。 - 在 Openwrt 中,
procd是初始化脚本 (rc.common),它将运行 init.d 下列出的脚本以及rc.d下的脚本。
如果我尝试使用 Buildroot 为 OpenWrt 支持的固件生成映像,这会不会有任何影响?
【问题讨论】:
标签: embedded-linux openwrt buildroot