当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 4 篇帖子 ] 
作者 内容
1 楼 
 文章标题 : 这是什么错误呀?求助
帖子发表于 : 2010-08-20 14:30 

注册: 2010-08-03 16:21
帖子: 4
送出感谢: 0 次
接收感谢: 0 次
帮个忙看一下这是些什么错误呀,我是初学者,解决不了:
jinjun8505@ubuntu:~$ vi tester.c
jinjun8505@ubuntu:~$ gcc -O2 -DMODULE -D__KERNEL__ -c tester.c
tester.c:1:2: error: invalid preprocessing directive #define_NO_VERSON_
tester.c:2:26: error: linux/modules.h: 没有那个文件或目录
tester.c:5: error: ‘UTS_RELEASE’ undeclared here (not in a function)
tester.c:8: error: expected declaration specifiers or ‘...’ before ‘off_t’
tester.c:8: warning: ‘struct file’ declared inside parameter list
tester.c:8: warning: its scope is only this definition or declaration, which is probably not what you want
tester.c:8: warning: ‘struct inode’ declared inside parameter list
tester.c:9: warning: ‘struct file’ declared inside parameter list
tester.c:9: warning: ‘struct inode’ declared inside parameter list
tester.c:10: error: expected declaration specifiers or ‘...’ before ‘off_t’
tester.c:10: warning: ‘struct file’ declared inside parameter list
tester.c:10: warning: ‘struct inode’ declared inside parameter list
tester.c:11: warning: ‘struct direct’ declared inside parameter list
tester.c:11: warning: ‘struct file’ declared inside parameter list
tester.c:11: warning: ‘struct inode’ declared inside parameter list
tester.c:12: error: expected declaration specifiers or ‘...’ before ‘select_table’
tester.c:12: warning: ‘struct file’ declared inside parameter list
tester.c:12: warning: ‘struct inode’ declared inside parameter list
tester.c:13: warning: ‘struct file’ declared inside parameter list
tester.c:13: warning: ‘struct inode’ declared inside parameter list
tester.c:14: error: expected ‘;’, ‘,’ or ‘)’ before ‘*’ token
tester.c:15: error: expected ‘;’ before ‘int’
In file included from /usr/include/asm-generic/types.h:7,
from /usr/include/asm/types.h:6,
from /usr/include/linux/types.h:4,
from tester.c:23:
/usr/include/asm-generic/int-ll64.h:19: error: two or more data types in declaration specifiers
/usr/include/asm-generic/int-ll64.h:19: error: two or more data types in declaration specifiers
tester.c:25:21: error: linux/mm.h: 没有那个文件或目录
tester.c:27:24: error: asm/segment.h: 没有那个文件或目录
tester.c:30: warning: ‘struct file’ declared inside parameter list
tester.c:30: warning: ‘struct inode’ declared inside parameter list
tester.c: In function ‘read_test’:
tester.c:33: error: ‘VERIFY_WRITE’ undeclared (first use in this function)
tester.c:33: error: (Each undeclared identifier is reported only once
tester.c:33: error: for each function it appears in.)
tester.c: At top level:
tester.c:42: warning: ‘struct file’ declared inside parameter list
tester.c:42: warning: ‘struct inode’ declared inside parameter list
tester.c:47: warning: ‘struct file’ declared inside parameter list
tester.c:47: warning: ‘struct inode’ declared inside parameter list
tester.c: In function ‘open_tibet’:
tester.c:49: error: ‘MOD_INC_USE_COUNT’ undeclared (first use in this function)
tester.c: At top level:
tester.c:53: warning: ‘struct file’ declared inside parameter list
tester.c:53: warning: ‘struct inode’ declared inside parameter list
tester.c: In function ‘release_tibet’:
tester.c:55: error: ‘MOD_DEC_USE_COUNT’ undeclared (first use in this function)
tester.c: At top level:
tester.c:58: error: variable ‘test_fops’ has initializer but incomplete type
tester.c:59: warning: excess elements in struct initializer
tester.c:59: warning: (near initialization for ‘test_fops’)
tester.c:60: warning: excess elements in struct initializer
tester.c:60: warning: (near initialization for ‘test_fops’)
tester.c:61: error: ‘write_test’ undeclared here (not in a function)
tester.c:61: warning: excess elements in struct initializer
tester.c:61: warning: (near initialization for ‘test_fops’)
tester.c:62: warning: excess elements in struct initializer
tester.c:62: warning: (near initialization for ‘test_fops’)
tester.c:63: warning: excess elements in struct initializer
tester.c:63: warning: (near initialization for ‘test_fops’)
tester.c:64: warning: excess elements in struct initializer
tester.c:64: warning: (near initialization for ‘test_fops’)
tester.c:65: warning: excess elements in struct initializer
tester.c:65: warning: (near initialization for ‘test_fops’)
tester.c:66: error: ‘open_test’ undeclared here (not in a function)
tester.c:66: warning: excess elements in struct initializer
tester.c:66: warning: (near initialization for ‘test_fops’)
tester.c:67: error: ‘release_test’ undeclared here (not in a function)
tester.c:67: warning: excess elements in struct initializer
tester.c:67: warning: (near initialization for ‘test_fops’)
tester.c:67: warning: excess elements in struct initializer
tester.c:67: warning: (near initialization for ‘test_fops’)
tester.c:68: warning: excess elements in struct initializer
tester.c:68: warning: (near initialization for ‘test_fops’)
tester.c: In function ‘init_module’:
tester.c:78: error: ‘KERN_INFO’ undeclared (first use in this function)
tester.c:78: error: expected ‘)’ before string constant


页首
 用户资料  
 
2 楼 
 文章标题 : Re: 这是什么错误呀?求助
帖子发表于 : 2010-08-20 17:17 
头像

注册: 2009-07-07 19:52
帖子: 240
送出感谢: 0 次
接收感谢: 0 次
你是跟谁学的这编译方法,扁他。 :em09


内核模块不是这样编译的,好歹你也要带上内核路径把,不然它去哪里找头文件啊。


_________________
阿呆 : 天下第一呆!


页首
 用户资料  
 
3 楼 
 文章标题 : Re: 这是什么错误呀?求助
帖子发表于 : 2010-08-29 18:41 
头像

注册: 2007-08-05 17:40
帖子: 4979
送出感谢: 0 次
接收感谢: 6
内核模块的编译不能这样,要写一个makefile,应该每本介绍内核的书都会写的。


_________________
free VPN
YouKuDownLoader
代码:
pip3 install ykdl

install YouKuDownLoader, have fun in downloading.
YouKuDownLoader所支持网站列表


页首
 用户资料  
 
4 楼 
 文章标题 : Re: 这是什么错误呀?求助
帖子发表于 : 2010-09-30 14:13 

注册: 2010-03-06 18:38
帖子: 8
送出感谢: 0 次
接收感谢: 0 次
引用:
gao745@gao745-laptop:~$ gcc -O2 -DMODULE -D__KERNEL__ -c test.c
test.c:2:27: 错误: linux/modules.h:没有那个文件或目录
test.c:4: 错误: ‘UTS_RELEASE’未声明(不在函数内)
test.c:8:22: 错误: linux/mm.h:没有那个文件或目录
test.c:10:25: 错误: asm/segment.h:没有那个文件或目录
test.c:14: 警告: ‘struct file’在形参表内部声明
test.c:14: 警告: 它的作用域仅限于此定义或声明,这可能并不是您想要的
test.c:14: 警告: ‘struct inode’在形参表内部声明
test.c: 在函数‘read_test’中:
test.c:17: 错误: ‘VERIFY_WRITE’未声明(在此函数内第一次使用)
test.c:17: 错误: (即使在一个函数内多次出现,每个未声明的标识符在其
test.c:17: 错误: 所在的函数内也只报告一次。)
test.c: 在文件层:
test.c:28: 警告: ‘struct file’在形参表内部声明
test.c:28: 警告: ‘struct inode’在形参表内部声明
test.c:29: 错误: 程序中有游离的‘\357’
test.c:29: 错误: 程序中有游离的‘\275’
test.c:29: 错误: 程序中有游离的‘\233’
test.c: 在函数‘write_test’中:
test.c:30: 错误: expected declaration specifiers before ‘return’
test.c:31: 错误: 程序中有游离的‘\357’
test.c:31: 错误: 程序中有游离的‘\275’
test.c:31: 错误: 程序中有游离的‘\235’
test.c:33: 警告: ‘struct file’在形参表内部声明
test.c:33: 警告: ‘struct inode’在形参表内部声明
test.c:34: 错误: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘{’ token
test.c:39: 警告: ‘struct file’在形参表内部声明
test.c:39: 警告: ‘struct inode’在形参表内部声明
test.c:40: 错误: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘{’ token
test.c:44: 错误: 形参‘test_fops’已初始化
test.c:45: 警告: 结构初始值设定项中有多余元素
test.c:45: 警告: (在‘test_fops’的初始化附近)
test.c:46: 警告: 结构初始值设定项中有多余元素
test.c:46: 警告: (在‘test_fops’的初始化附近)
test.c:47: 警告: 结构初始值设定项中有多余元素
test.c:47: 警告: (在‘test_fops’的初始化附近)
test.c:48: 警告: 结构初始值设定项中有多余元素
test.c:48: 警告: (在‘test_fops’的初始化附近)
test.c:49: 警告: 结构初始值设定项中有多余元素
test.c:49: 警告: (在‘test_fops’的初始化附近)
test.c:50: 警告: 结构初始值设定项中有多余元素
test.c:50: 警告: (在‘test_fops’的初始化附近)
test.c:51: 警告: 结构初始值设定项中有多余元素
test.c:51: 警告: (在‘test_fops’的初始化附近)
test.c:52: 错误: ‘open_test’未声明(在此函数内第一次使用)
test.c:52: 警告: 结构初始值设定项中有多余元素
test.c:52: 警告: (在‘test_fops’的初始化附近)
test.c:53: 错误: ‘release_test’未声明(在此函数内第一次使用)
test.c:53: 警告: 结构初始值设定项中有多余元素
test.c:53: 警告: (在‘test_fops’的初始化附近)
test.c:54: 警告: 结构初始值设定项中有多余元素
test.c:54: 警告: (在‘test_fops’的初始化附近)
test.c:57: 警告: 结构初始值设定项中有多余元素
test.c:57: 警告: (在‘test_fops’的初始化附近)
test.c:60: 错误: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘{’ token
test.c:76: 错误: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘{’ token
test.c:78: 错误: 原型函数定义中使用了旧式参数声明
test.c:78: 错误: expected ‘{’ at end of input


估计跟我看的是同一篇文章,很老的一篇了,一堆问题,正在忙着google / baidu。


页首
 用户资料  
 
显示帖子 :  排序  
发表新帖 回复这个主题  [ 4 篇帖子 ] 

当前时区为 UTC + 8 小时


在线用户

正在浏览此版面的用户:没有注册用户 和 3 位游客


不能 在这个版面发表主题
不能 在这个版面回复主题
不能 在这个版面编辑帖子
不能 在这个版面删除帖子
不能 在这个版面提交附件

前往 :  
本站点为公益性站点,用于推广开源自由软件,由 DiaHosting VPSBudgetVM VPS 提供服务。
我们认为:软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;
人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
简体中文语系由 王笑宇 翻译