首页 > 解决方案 > 修补 bitbake 以使用自定义 `wpa_supplicant.conf`

问题描述

我有一个wpa_supplicant.conf我想在第一次启动时使用的。我尝试poky如下修补 的配方。这是我的wpa_supplicant_2.6.bbappend

FILESEXTRAPATHS_append := ":${THISDIR}/${PN}"
SRC_URI_append = " file://wpa_supplicant.conf"

我有相对于bbappendin存储的 conf 文件wpa_supplicant/wpa_supplicant.conf。仍然始终将原始 poky conf 文件添加到图像中。

如何注入我的配置文件?

(我在分行warrior

注意/编辑:为了快速有效地解决问题,我建议还讨论IRC 频道中的问题(在这种情况下也发生过)。那里的人超级乐于助人!

标签: embedded-linuxyoctobitbake

解决方案


首先,调用配方wpa-supplicant而不是wpa_supplicant,因此您需要命名 bbappendwpa-supplicant_2.6.bbapend而不是wpa_supplicant_2.6.bbappend。请记住,配方或包名中没有下划线、没有大写字母。

可以通过使用来检查 bbappend 是否被解析bitbake-layers show-appends wpa-supplicant。你会看到你的 bbappend 没有被考虑在内。

然后,通常应该使用一个,FILESEXTRAPATHS_prepend :=因为您希望在所有其他路径之前遍历您的路径。 FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"

最后,由于配方被命名wpa-supplicant而不是wpa_supplicant${PN}将是wpa-supplicant,因此您需要将文件放入wpa-supplicant/而不是wpa_supplicant

要检查文件遍历路径的顺序,可以运行bitbake -e wpa-supplicant | grep -e "^FILESPATH=",路径从最左到右遍历。将采用与完整路径匹配的第一个文件。

在与您讨论 IRC 之后,我可以补充一点,我们还发现wpa_supplicant.conf它安装在文档目录中,但wpa_supplicant.conf-sane将用作wpa_supplicant.conf目标的最终映像中的那个。因此,需要为wpa_supplicant.conf文件命名wpa_supplicant.conf-sane,以便它替换wpa_supplicant.conf最终图像中的文件。

cf https://git.yoctoproject.org/cgit.cgi/poky/tree/meta/recipes-connectivity/wpa-supplicant/wpa-supplicant_2.6.bb?h=thud#n88https://git.yoctoproject .org/cgit.cgi/poky/tree/meta/recipes-connectivity/wpa-supplicant/wpa-supplicant_2.6.bb?h=thud#n91


推荐阅读