Kconfig 和 LKM
我正在内核树之外使用 LKM,我想为我的模块使用一些编译选项,例如 MYLKM_CONFIG_{something}。我知道这可以使用 C 预处理来完成(#define // #ifdef // #endif)。但我想知道是否可以使用 Kbuild(Kconfig 文件或相关文件)来实现此目的?..
还有一个问题。是否可以只为我的模块而不是整个内核树make menuconfig
?
谢谢。
I'm working with LKM outside the kernel tree and I want to use some compiling options for my module like MYLKM_CONFIG_{something}. I know that this can be done using the C preprocessing (#define // #ifdef // #endif). But I want to know is it possible to use Kbuild (Kconfig files or something related) for that purposes?..
And one more question. Is it possible to make menuconfig
for only my module, not for the whole kernel tree?
Thanks.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
如果您使用推荐的方法在树之外构建驱动程序(请参阅 ldd 第 2 章),该命令应如下所示:
该命令的效果有两个:
$( KERNELDIR)
在其中找到主内核 Makefile,$(PWD)
,它尝试在其中构建模块目标所以如果您复制你的.config从
$(KERNELDIR)
到$(PWD)
,它应该由 Makefile 解析,并且您应该拥有所有可用的 CONFIG_LKM_* #defines (虽然没有测试,但它听起来合乎逻辑)。对于
make menconfig
问题,根据上面的解释,如果您在$(PWD)
目录中添加一些KConfig文件,它可能会起作用。If you use the recommanded method for building drivers outside of the tree (see ldd Chapter 2), the command should look like this:
The effect of this command is two:
$(KERNELDIR)
where it finds the main kernel Makefile$(PWD)
, where it tries to build the modules targetSo if you copy your .config from
$(KERNELDIR)
to$(PWD)
, it should be parsed by the Makefile and you should have all your CONFIG_LKM_* #defines available (not tested though, but it sounds logical).For the
make menconfig
question, with regards to the above explanation, it may work if you add some KConfig files in your$(PWD)
directory.