当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 2 篇帖子 ] 
作者 内容
1 楼 
 文章标题 : 使用-I/usr/src/linux-headers-2.6.32-24/include编译,提示好多错误。
帖子发表于 : 2010-09-26 10:05 

注册: 2010-04-01 17:23
帖子: 26
送出感谢: 0 次
接收感谢: 0 次
最近在学习Linux程序设计第三版里面的设备驱动程序,在编译第一个例子时,出现了问题。

例子的源代码如下:
#include <linux/module.h>

#if defined(CONFIG_SMP)
#define _SMP_
#endif

#if defined(CONFIG_MODVERSIONS)
#define MODVERSIONS
#include <linux/modversions.h>
#endif

#include <linux/kernel.h>

static _init int init_module(void)
{
printk(KERN_DEBUG, "Hello, kernel!\n");
return 0;
}

static _exit void clean_module(void)
{
printk(KERN_DEBUG, "Good-bye, kernel!\n");
}
书上编译用的命令如下:gcc -D_KERNEL_ -I/usr/src/linux/include -DMODULE -Wall -O2 -c hello.c -o hello.o 但是我在/usr/src下面没有linux文件夹,
所以我改为gcc -D_KERNEL_ -I/usr/src/linux-headers-2.6.32-24/include -DMODULE -Wall -O2 -c hello.c -o hello.o
但是编译后好多头文件提示出了好多的错误,例如:
/usr/src/linux-headers-2.6.32-24/include/linux/seqlock.h:86: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘unsigned’
/usr/src/linux-headers-2.6.32-24/include/linux/seqlock.h:106: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘int’
上网查了,没找到解决方法,还请高人指点,谢谢!


页首
 用户资料  
 
2 楼 
 文章标题 : Re: 使用-I/usr/src/linux-headers-2.6.32-24/include编译,提示好多错误。
帖子发表于 : 2010-10-09 8:33 
头像

注册: 2010-09-26 9:00
帖子: 11
送出感谢: 0 次
接收感谢: 0 次
有这样的一种可能:
第三版里面的设备驱动程序中使用的内核版本不是你当前的内核版本2.6.32-24,这样引起的错误可想而知,有可能有些定义在新版本的内核中取消了,要注意.


_________________
漫步随风飘-weike


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

当前时区为 UTC + 8 小时


在线用户

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


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

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

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