当前位置: 技术问答>linux和unix
编译模块又失败了
来源: 互联网 发布时间:2015-07-03
本文导语: 我在一台机器上用代码编译成功了 不过是redhat 7.1 #define MODULE #define __KERNEL__ #include #include #include int init_module(void) { printk("Hello, worldn"); return 0; } void cleanup_module(void) { printk("Goodbye cruel worldn"); } 但是在...
我在一台机器上用代码编译成功了 不过是redhat 7.1
#define MODULE
#define __KERNEL__
#include
#include
#include
int init_module(void) { printk("Hello, worldn"); return 0; }
void cleanup_module(void) { printk("Goodbye cruel worldn"); }
但是在另一台上又失败了 redhat 7.3
错误的代码
还是
helo.c:4:65: warning: no newline at end of file
In file included from helo.c:2:
/usr/include/linux/module.h:60: parse error before `atomic_t'
/usr/include/linux/module.h:60: warning: no semicolon at end of struct or union
/usr/include/linux/module.h:60: warning: no semicolon at end of struct or union
/usr/include/linux/module.h:62: parse error before `}'
/usr/include/linux/module.h:62: warning: data definition has no type or storage class
/usr/include/linux/module.h:91: parse error before `}'
我不知到哪里有问题 可能是那个rpm 包没有装巴
我不知道那个包没有装 应该怎么看呢?
#define MODULE
#define __KERNEL__
#include
#include
#include
int init_module(void) { printk("Hello, worldn"); return 0; }
void cleanup_module(void) { printk("Goodbye cruel worldn"); }
但是在另一台上又失败了 redhat 7.3
错误的代码
还是
helo.c:4:65: warning: no newline at end of file
In file included from helo.c:2:
/usr/include/linux/module.h:60: parse error before `atomic_t'
/usr/include/linux/module.h:60: warning: no semicolon at end of struct or union
/usr/include/linux/module.h:60: warning: no semicolon at end of struct or union
/usr/include/linux/module.h:62: parse error before `}'
/usr/include/linux/module.h:62: warning: data definition has no type or storage class
/usr/include/linux/module.h:91: parse error before `}'
我不知到哪里有问题 可能是那个rpm 包没有装巴
我不知道那个包没有装 应该怎么看呢?
|
头文件的地方可能不正确, 在Redhat上,通常编译应用程序用的头文件目录是/usr/include,
当编译驱动的时候,需要用你内核源代码目录下面的头文件目录: /your kernel source path/include.
当编译驱动的时候,需要用你内核源代码目录下面的头文件目录: /your kernel source path/include.
|
同意楼上 gcc -c -I/usr/src/linux-xxxxx/include *.c