|
刚刚才开始看关于内核方面的编程, 但是出现了好多不懂的地方,希望大家不吝赐教啊!~谢谢
#ifndef __KERNEL__
# define __KERNEL__
#endif
#ifndef MODULE
# define MODULE
#endif
#include <linux/config.h>
#include <linux/module.h>
MODULE_LICENSE("GPL");
#ifdef CONFIG_SMP
#define __SMP__
#endif
#include <linux/kernel.h> /* printk()在这个文件里 */
static int
init_module
(){
printk("Hello,World!\n");
return 0; /* 如果初始工作失败,就返回非0 */
}
static void
cleanup_module
(){
printk("Bye!\n");
}
但是却输出了好多的错误:错误太多了,只复制了一点.
/usr/include/linux/module.h:50: 错误:字段 ‘attr’ 的类型不完全
/usr/include/linux/module.h:51: 错误:syntax error before ‘ssize_t’
/usr/include/linux/module.h:52: 错误:syntax error before ‘*’ token
/usr/include/linux/module.h:53: 错误:syntax error before ‘size_t’
/usr/include/linux/module.h:53: 错误:‘ssize_t’ 声明为返回一个函数的函数
/usr/include/linux/module.h:57: 错误:syntax error before ‘}’ token
/usr/include/linux/module.h:219: 错误:字段 ‘mattr’ 的类型不完全
hello.c:20: 错误:对 ‘init_module’ 的静态声明出现在非静态声明之后
/usr/include/linux/module.h:66: 错误:‘init_module’ 的上一个声明在此
hello.c:27: 错误:对 ‘cleanup_module’ 的静态声明出现在非静态声明之后
/usr/include/linux/module.h:67: 错误:‘cleanup_module’ 的上一个声明在此
谁能告诉我怎么办啊?
非常感谢! |
|