驱动模块编译:
在gcc命令行中加入-I /usr/src/linux-2.4.22-1.2115/include/
如:gcc -Wall -c -O2 -I/usr/src/linux-2.4.22-1.2115/include/ a.c (注:-I与目录之间的空格可有可无)
要想去掉编译警告信息"no license",在include的下一行加上 MODULE_LICENSE("GPL");
驱动模块挂载: 在非虚拟终端才能看到printk的未指定级别消息,想在虚拟终端看到消息,需在消息前加设级别,如printf("<0>hello world!/n");
makefile的编写举例:
#this is my frist makefile
cc = gcc
CFLAGS = -I/usr/src/linux-2.4.22-1.2115.nptl/include/
unreal:a.o hello.o
a.o:a.c
$(cc) -c -O2 -Wall $(CFLAGS) a.c
hello.o:hello.c
$(cc) -c -O2 -Wall $(CFLAGS) hello.c