LDD2中hello world的问题
下面是hello.c和对应的Makefile:(kernel2.4)
hello.c
--------------------------------------------------
#include <linux/kernel.h>
#include <linux/module.h>
int init_module(void)
{
printk( "Hello,World!\n ");
return 0;
}
void cleanup_module(void)
{
printk( "Goodbye cruel world \n ");
}
MODULE_LICENSE( "GPL ");
---------------------------------------------------
Makefile
---------------------------------------------------
CC=gcc
KERNELDIR=/usr/src/linux-$(shell uname -r)
MODCFLAGS:=-Wall -DMODULE -D__KERNEL__ -DLINUX -I $(KERNELDIR)/include
hello.o:hello.c /usr/include/linux/version.h
$(CC) $(MODCFLAGS) -c hello.c
clean:
rm -f *.o
----------------------
希望大家帮忙改一下Makefile,来适应下面的要求:
修改后目录结构如下(其中h和hello是同一级的目录):
----------------------
/h/hello.h
/hello/hello.c
/Makefile
----------------------
现在hello.c需要包含hello.h这个文件,怎么改Makefile?
[解决办法]
如果只是hello.c中用到,那应该只要在$(CC)...中加入 -Ihello.h的路径 即可。
[解决办法]
建议到网上找Makefile的介绍系统的看看,在Linux下开发,不熟悉Makefile,两个字--不行