|
我使用s3c2410开发板,学习驱动编程,写的第一个程序加载有问题,请指教
hello.c
#include
#include
#include
#include
MODULE_LICENSE("DUAL BSD/GPL");
static int hello_init(void)
{
printk("Hello,!\n");
return 0;
}
static void hello_exit(void)
{
printk("Goodbye,!\n");
}
module_init(hello_init);
module_exit(hello_exit);
Makefile:
EXEC =hello
OBJS =hello.o
SRC=hello.c
INCLUDE=/2410linux_src/include
CC=arm-linux-gcc
LD=arm-linux-ld
MODCFLAGS=-O2 -Wall -D__KERNEL__ -DMODULE -I$(INCLUDE) -march=armv4t -c -o
LDFLAGS=-r
all:$(EXEC)
$(EXEC):$(OBJS)
$(LD) $(LDFLAGS) -o $@ $(OBJS)
hello.o:hello.c
$(CC) $(MODCFLAGS) -mapcs -c $< -o $@
clean:
-rm -f $(EXEC) *.o *~ core
加载到开发板以后,输入insmod hello,系统提示unresolved symbol printk,请问怎么回事。
insmod 应该是动态加载,是否要将PC机上源代码/2410linux_src/include也拷贝到开发板上
|
|