此帖出自嵌入式系统论坛
最新回复
估计LZ是想要把自己驱动,加到config里面去
网上kconfig的介绍很多的。自己多百google度找找看看。
#config
config HELLOWORD
bool"helloword"
depends on HelloWord.c
help
.........
#Makefile
obj-$(CONFIG_HELLOWORD)+=HelloWord.c
你这上面中的,
depends on意思理解错了,
depends on是表示,此配置选项,依赖于其他某个配置选项,
一般也就是此配置选项的上一层的配置选项,如果上一层没选中,那么你这一层的配置选项就不会出现
“在makefile中 还要写gcc HelloWord.c 命令吗? ”
不需要。
“obj-$(CONFIG_HELLOWORD)+=HelloWord.c 怎么解释?“+=”是什么意思? ”
makefile中,你应该这么写
obj-$(CONFIG_HELLOWORD)+=HelloWord.o
obj-$(CONFIG_HELLOWORD)
中的$(CONFIG_HELLOWORD)是根据你的config里面的配置,有三种值:
只有空格表示没选中/*表示选中,编译到内核里去,也叫built-in/m表示模块
对应的就是
obj-n: 没选中,所以就不会去编译你的HelloWord.c
obj-y:选中,表示编译你的HelloWord.c到内核里面去
obj-m :编译你的HelloWord.c成模块,你可以在需要的时候自己动态加载。编译出来的文件是HelloWord.ko
+=的意思,如果你学过C语言,和里面的+=意思类似,你就很清楚了。
简单解释就是+=表示,将你要编译的HelloWord.o,
根据obj-n/y/m 是不加入编译,还是加入编译到内核,还是编译成模块。
“怎么在makefile中指定头文件的路径? ”
不需要
makefile会自动搜索和c文件同名的.h头文件。
详情
回复
发表于 2009-8-4 22:09
| ||
|
||
| |
|
|
| |
|
|
| |
|
|
| |
|
|
此帖出自嵌入式系统论坛
| ||
|
||
此帖出自嵌入式系统论坛
| ||
|
||
EEWorld Datasheet 技术支持