修补 bitbake 以使用自定义“wpa_supplicant.conf”

grm*_*rmm 1 embedded-linux bitbake yocto

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

FILESEXTRAPATHS_append := ":${THISDIR}/${PN}"
SRC_URI_append = " file://wpa_supplicant.conf"
Run Code Online (Sandbox Code Playgroud)

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

如何注入我的配置文件?

(我在分行warrior

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

qsc*_*ulz 7

首先,配方被称为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-supplicantwpa-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