我想重新编译linux内核,以便在其中添加一些新模块。
但:
无法在xconfig中检查它们以将其标记为模块或内置。
我的方法:
1 /"编辑 - >查找"在搜索框中键入CX231XX - >找到模块选项。所有四个模块都列在搜索窗口中:
2 /但是。它们不会出现在配置窗口中。
3 /当我切换"选项 - >显示所有选项",它们出现在模块列表中,我可以在那里看到它们,但它们无法将状态更改为M或Y.它们仍然未经检查。
可能存在一些依赖性问题,但如果假设某种事情是自动解决的话,我就错了?
如何将cx231xx支持编译到我的内核中,plz ??
(4.4.26-gentoo x86_64 Intel(R)Core(TM)2 Duo CPU E4600 @ 2.40GHz GNU / Linux)
答案 0 :(得分:0)
看来,CONFIG_VIDEO_CX231XX 的帮助文本中提到的所有依赖关系已经解决了:
Symbol: VIDEO_CX231XX [=n]
Type : tristate
Prompt: Conexant cx231xx USB video capture support
Location:
-> Device Drivers
-> Multimedia support (MEDIA_SUPPORT [=m])
-> Media USB Adapters (MEDIA_USB_SUPPORT [=y])
Defined at drivers/media/usb/cx231xx/Kconfig:1
Depends on: USB [=y] && MEDIA_SUPPORT [=m] && MEDIA_USB_SUPPORT [=y] && (MEDIA_ANALOG_TV_SUPPORT [=y] || MEDIA_DIGITAL_TV_SUPPORT [=y]) && VIDEO_DEV [=m] && I2C [=m] && RC_CORE [=n]
Selects: VIDEO_TUNER [=m] && VIDEO_TVEEPROM [=m] && VIDEOBUF_VMALLOC [=m] && VIDEO_CX25840 [=m] && VIDEO_CX2341X [=m] && I2C_MUX [=m]
和我的内核:
alnagon ~ % zcat /proc/config.gz |grep MEDIA_SUPPORT
CONFIG_MEDIA_SUPPORT=m
alnagon ~ % zcat /proc/config.gz |grep MEDIA_USB_SUPPORT
CONFIG_MEDIA_USB_SUPPORT=y
alnagon ~ % zcat /proc/config.gz |grep CONFIG_USB=
CONFIG_USB=y
alnagon ~ % zcat /proc/config.gz |grep CONFIG_MEDIA_SUPPORT
CONFIG_MEDIA_SUPPORT=m
alnagon ~ % zcat /proc/config.gz |grep CONFIG_MEDIA_USB_SUPPORT
CONFIG_MEDIA_USB_SUPPORT=y
alnagon ~ % zcat /proc/config.gz |grep CONFIG_MEDIA_ANALOG_TV_SUPPORT
CONFIG_MEDIA_ANALOG_TV_SUPPORT=y
alnagon ~ % zcat /proc/config.gz |grep CONFIG_MEDIA_DIGITAL_TV_SUPPORT
CONFIG_MEDIA_DIGITAL_TV_SUPPORT=y
alnagon ~ % zcat /proc/config.gz |grep CONFIG_VIDEO_DEV
CONFIG_VIDEO_DEV=m
alnagon ~ % zcat /proc/config.gz |grep CONFIG_I2C=
CONFIG_I2C=m
alnagon ~ % zcat /proc/config.gz |grep CONFIG_VIDEO_TUNER
CONFIG_VIDEO_TUNER=m
alnagon ~ % zcat /proc/config.gz |grep CONFIG_VIDEO_TVEEPROM
CONFIG_VIDEO_TVEEPROM=m
alnagon ~ % zcat /proc/config.gz |grep CONFIG_VIDEOBUF_VMALLOC
CONFIG_VIDEOBUF_VMALLOC=m
alnagon ~ % zcat /proc/config.gz |grep CONFIG_VIDEO_CX25840
CONFIG_VIDEO_CX25840=m
alnagon ~ % zcat /proc/config.gz |grep CONFIG_VIDEO_CX2341X
CONFIG_VIDEO_CX2341X=m
alnagon ~ % zcat /proc/config.gz |grep CONFIG_I2C_MUX=
CONFIG_I2C_MUX=m
只有 RC_CORE选项有一些麻烦,因为缺少:
alnagon ~ % zcat /proc/config.gz |grep CONFIG_RC_CORE
alnagon ~ % zcat /proc/config.gz |grep RC_CORE
alnagon ~ % zcat /proc/config.gz |grep CONFIG_RC
# CONFIG_RCU_EXPERT is not set
CONFIG_RCU_STALL_COMMON=y
# CONFIG_RCU_EXPEDITE_BOOT is not set
# CONFIG_RCU_TORTURE_TEST is not set
CONFIG_RCU_CPU_STALL_TIMEOUT=21
# CONFIG_RCU_TRACE is not set
# CONFIG_RCU_EQS_DEBUG is not set
alnagon ~ %
CONFIG_RC_CORE不在内核中,但必须解决,那么......?
背景:
RC_CORE是内核中特定的奇怪类型的选项。 RC_CORE是辅助选项,无法手动切换。它不能在xconfig或menuconfig中解决,但有工具,它知道它。如上所述0andriy - 非常感谢 - 它是make nconfig。 nconfig中的 F8(SymSearch)找到RC_CORE及其依赖。
Symbol: RC_CORE [=m]
Type : tristate
Defined at drivers/media/rc/Kconfig:1
Depends on: MEDIA_SUPPORT [=m] && MEDIA_RC_SUPPORT [=y] && INPUT [=y]
就是这样。隐藏的依赖是: MEDIA_RC_SUPPORT !!!
所以答案是:
如果要编译VIDEO_CX231XX,还必须打开MEDIA_RC_SUPPORT。
答案 1 :(得分:-1)
另外" make menuconfig"并在那里搜索显示阻止构建模块的内容。
拉米罗森