你好世界kconfig和makefile使之类似于linux内核menuconfig

问题描述:

我该如何实现hello world Makefile & Kconfig?你好世界kconfig和makefile使之类似于linux内核menuconfig

我知道如何编写Makefile,但我们如何编写类似于Linux Kernel的Makefile和Kconfig。
我想写一个小程序,我可以打开类似于Linux Kernel的menuconfig吗?我不希望它用于Linux内核模块编译,我知道这一部分,我想学习如何将任何应用程序转换为这种可配置的应用程序。

任何示例指针,我应该从哪里开始?

+0

'我应该从哪里开始?' - 从内核的Makefile代码开始。 'make menuconfig'实际上调用了一些使用'ncurses'库构建的程序。 – Tsyvarev

+0

以下可能会有所帮助http://www.denx.de/wiki/pub/U-Boot/MiniSummitELCE2014/uboot2014_kconfig.pdf – sniper

如果我正确理解您的问题,那么您必须在内核构建过程中询问有关可加载模块的树构建。 Kconfig负责相应的值/可加载模块在menuconfig中可见(我使用menuconfig进行内核配置)。

为了简单起见,我们来看下面的内容: 在〜/ drivers目录下创建目录nammed mymod。 在〜/司机/ mymod创建的Kconfig和Makefile文件,并保持你的helloKernelmod.c

在的Kconfig保持以下内容

menu "Menu Name of Your Driver" 

config HELLO_MODULE 
     tristate "Inside Menu Name" 
     help 
      This is help/informational content for your module 
endmenu 

Makefile中保持以下内容

obj-$(CONFIG_HELLO_MODULE)  +=helloKernelmod.o 

这些更新会做技巧和你的模块将被构建。 添加缩进标签 欲了解更多信息,请参阅https://www.kernel.org/doc/Documentation/kbuild/kconfig-language.txt