当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 10 篇帖子 ] 
作者 内容
1 楼 
 文章标题 : [求救]一个最简单的内核模块
帖子发表于 : 2008-06-21 15:17 

注册: 2008-03-18 13:23
帖子: 26
送出感谢: 0 次
接收感谢: 0 次
#include <linux/init.h>
#include <linux/module.h>
MODULE_LICENSE("Dual BSD/GPL");
static int hello_init(void)
{
printk(KERN_INFO " Hello World enter\n");
return 0;
}

static void hello_exit(void)
{
printk(KERN_INFO " Hello World exit\n ");
}

module_init(hello_init);
module_exit(hello_exit);

MODULE_AUTHOR("Song Baohua");
MODULE_DESCRIPTION("A simple Hello World Module");
MODULE_ALIAS("a simplest module");


编译的时候提示
hello.c:7:24: 错误: linux/init.h:No such file or directory
hello.c:8:26: 错误: linux/module.h:No such file or directory

怎么办啊?已经用了sudo apt-get install linux-headers-`uname -r` 之后显示共升级了 0 个软件包,新安装了 0 个软件包,要卸载 0 个软件包,有 0 个软件未被升级, 然后还是出同样的错?


页首
 用户资料  
 
2 楼 
 文章标题 :
帖子发表于 : 2008-06-21 16:22 

注册: 2006-08-17 6:10
帖子: 113
送出感谢: 0 次
接收感谢: 0 次
apt-get search linux-headers 安装相应的头文件


页首
 用户资料  
 
3 楼 
 文章标题 :
帖子发表于 : 2008-06-21 16:52 

注册: 2008-03-18 13:23
帖子: 26
送出感谢: 0 次
接收感谢: 0 次
提示
E: 无效的操作 search
如果把search改成install
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
读取状态信息... 完成
软件包 linux-headers 是一个由下面的软件包提供的虚拟软件包:
linux-headers-2.6.20-16-server-bigiron 2.6.20-16.35
linux-headers-2.6.20-16-server 2.6.20-16.35
linux-headers-2.6.20-16-lowlatency 2.6.20-16.35
linux-headers-2.6.20-16-generic 2.6.20-16.35
linux-headers-2.6.20-16-386 2.6.20-16.35
linux-headers-2.6.20-16 2.6.20-16.35
linux-headers-2.6.20-15-server-bigiron 2.6.20-15.27
linux-headers-2.6.20-15-server 2.6.20-15.27
linux-headers-2.6.20-15-lowlatency 2.6.20-15.27
linux-headers-2.6.20-15-generic 2.6.20-15.27
linux-headers-2.6.20-15-386 2.6.20-15.27
linux-headers-2.6.20-15 2.6.20-15.27
请您明确地选择一个来进行安装。
怎么选择呢?


页首
 用户资料  
 
4 楼 
 文章标题 :
帖子发表于 : 2008-06-21 16:55 

注册: 2008-03-18 13:23
帖子: 26
送出感谢: 0 次
接收感谢: 0 次
输入sudo apt-get install linux-headers-2.6.20-16
提示linux-headers-2.6.20-16 已经是最新的版本了。
共升级了 0 个软件包,新安装了 0 个软件包,要卸载 0 个软件包,有 0 个软件未被升级。
但是编译的时候还是提示没有找到头文件


页首
 用户资料  
 
5 楼 
 文章标题 :
帖子发表于 : 2008-06-21 21:12 

注册: 2006-08-17 6:10
帖子: 113
送出感谢: 0 次
接收感谢: 0 次
如果你是穿着超短裙的超级可爱美少女,那应该是多么美妙啊..

uname -r

搜索相应的头文件,并且安装它们


页首
 用户资料  
 
6 楼 
 文章标题 :
帖子发表于 : 2008-06-21 21:14 

注册: 2007-08-28 13:19
帖子: 225
地址: USTC
送出感谢: 0 次
接收感谢: 0 次
show your Makefile


页首
 用户资料  
 
7 楼 
 文章标题 :
帖子发表于 : 2008-06-21 21:22 

注册: 2006-08-17 6:10
帖子: 113
送出感谢: 0 次
接收感谢: 0 次
linux-headers-`uname -r`这行命令, 当初使用debian时也遇到和你同样的问题


页首
 用户资料  
 
8 楼 
 文章标题 :
帖子发表于 : 2008-06-22 2:12 

注册: 2008-03-18 13:23
帖子: 26
送出感谢: 0 次
接收感谢: 0 次
liuboadsl 写道:
如果你是穿着超短裙的超级可爱美少女,那应该是多么美妙啊..

uname -r

搜索相应的头文件,并且安装它们


输入uname -r 后显示
2.6.20-16-generic

再输入sudo apt-get install linux-headers-2.6.20-16-generic
显示
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
读取状态信息... 完成
linux-headers-2.6.20-16-generic 已经是最新的版本了。
共升级了 0 个软件包,新安装了 0 个软件包,要卸载 0 个软件包,有 0 个软件未被升级。
而且在/usr/src/下没有2.6.20-16-generic这个,只有linux-headers-2.6.20-15,linux-headers-2.6.20-15-generic,linux-headers-2.6.20-16,linux-headers-2.6.20-16-generic这四个文件
该怎么办啊?


页首
 用户资料  
 
9 楼 
 文章标题 :
帖子发表于 : 2008-06-22 2:49 

注册: 2008-03-18 13:23
帖子: 26
送出感谢: 0 次
接收感谢: 0 次
kinwin 写道:
show your Makefile


PWD = $(shell pwd)
KERNEL_SRC = /usr/src/linux-headers-2.6.20-15
obj-m := test.o
module-objs := test.o

all:
$(MAKE) -C $(KERNEL_SRC) M=$(PWD) modules

clean:
rm *.ko
rm *.o

这样的

make后提示/bin/sh: scripts/mod/modpost: not found
make[2]: *** [__modpost] 错误 127
make[1]: *** [modules] 错误 2
make[1]: Leaving directory `/usr/src/linux-headers-2.6.20-15'
make: *** [all] 错误 2


页首
 用户资料  
 
10 楼 
 文章标题 :
帖子发表于 : 2008-06-22 5:25 

注册: 2006-08-17 6:10
帖子: 113
送出感谢: 0 次
接收感谢: 0 次
简单的内核模块没必要makefile
另外,上面的写法适合 2.4 版本的内核 参考linux device drivers


如果还是不行, 具体操作可以参考下两篇文章, 希望能对你有所帮助 :)
http://blog.csdn.net/pottichu/archive/2 ... 92245.aspx
http://blog.chinaunix.net/u2/66806/showart_571450.html


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

当前时区为 UTC + 8 小时


在线用户

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


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

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

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