如果你到静态库不需要使用任何内核数据结构或者函数那么你可以参考
如何将内核静态库编译连接到驱动程序中去
http://blog.csdn.net/boywhp/archive/2010/12/07/6059688.aspx
如果你需要在静态库里面使用一些内核数据结构,如简单的添加一个 #include <linux/kernel.h>,你会发现编译器输出一堆错误!
最常见的是 <asm/linkxxx.h> 找不到之类,那么你可以参考我的静态库makefile
RM = rm -f
CCFLAGS = -c -O2 -D__KERNEL__
ARFLAG = -rc
CC = gcc -fno-common -v
AR = ar
lib_OBJECTS = xxxx.o
lib_SOURCE = xxxx.c
KDIR := /lib/modules/$(shell uname -r)/build/include
X86_ASMDIR := /lib/modules/$(shell uname -r)/build/arch/x86/include
CONFIG_FILE := /lib/modules/$(shell uname -r)/build/include/generated/autoc