Linux内核defconfig选项不使用BuildRoot生成.config

时间:2017-02-08 17:39:14

标签: linux kernel buildroot

我正在通过BuildRoot为arm目标构建内核版本2.6.39.4。

我正在使用自定义defconfig文件,我在其中添加了以下3个选项:

CONFIG_WIRELESS=y
CONFIG_WEXT_PRIV=y
CONFIG_WIRELESS_EXT=y

在生成的内核.config文件中,我在添加到defconfig的3中看到的唯一选项是CONFIG_WIRELESS=y

这是正常的吗?我知道一些内核配置选项是“隐藏的”,但会阻止它们出现在内核的最终.config中吗?

3 个答案:

答案 0 :(得分:4)

WEST_PRIVWIRELESS_EXT都是盲目选项(即它们没有提示,它们在menuconfig / xconfig中不可见)。
因此,您不能简单地在.config(或defconfig)文件中设置它们的值 它们仅在另一个选项select时启用 因此,您必须启用一些可见的相关选项,然后自动select WEXT_PRIVWIRELESS_EXT

答案 1 :(得分:0)

我有同样的问题,我通过设置CONFIG_HOSTAP = y来解决它。此选项还会设置以下选项:

CONFIG_WIRELESS=y
CONFIG_WIRELESS_EXT=y
CONFIG_WEXT_CORE=y
CONFIG_WEXT_PROC=y
CONFIG_WEXT_SPY=y
CONFIG_WEXT_PRIV=y

CONFIG_WLAN=y

CONFIG_LIB80211=y
CONFIG_LIB80211_CRYPT_WEP=y
CONFIG_LIB80211_CRYPT_CCMP=y
CONFIG_LIB80211_CRYPT_TKIP=y

我已经确认在defconfig中设置CONFIG_HOSTAP = y确实会导致在使用buildroot时在.config中启用上述选项。

答案 2 :(得分:0)

这是某些内核版本的解决方案: https://lkml.org/lkml/2019/9/6/787

此补丁添加了选择wext_ *配置的父对象。 稍后,您需要转到板配置,即: arch / arm / configs / imx_v7_android_defconfig 并添加行: CONFIG_WIRELESS_ALLCONFIG = y

然后重新编译内核,即:在Android上,您可以执行以下操作: 制作-j32 kernelimage