QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1166|回复: 5

编译出来的module为什么总是load不了

[复制链接]
发表于 2005-6-23 18:05:05 | 显示全部楼层 |阅读模式
build出来agpgart module总也load不了.
我的内核版本和所下的内核源码是一个版本号啊.

问一个很弱的问题,我这么编内核module对不对:
我的内核是2.6.9-1.667, 下了kernel-2.6.9-1.667.src.rpm.然后
#rpm -ivh kernel-2.6.9-1.667.src.rpm
#cd /usr/src/redhat/SOURCE 找到linux-2.6.9.tar.bz2 将他解压,然后把解压出来的linux-2.6.9目录移动到/usr/src
之后就在/usr/src/linux-2.6.9下面编module.

#make menuconfig选择module
#make clean
#make modules M=driver/char/agp
把编好的agp*.ko拷到/lib/module/'uname -r'/kernel/driver/char/agp
#depmod -a
#modprobe agpgart
然后就出错.说不匹配
agpgart: version magic '2.6.9-1.667 686 REGPARM gcc-3.4' should be '2.6.9-1.667 686 REGPARM 4KSTACKS gcc-3.4'

如果用#modprobe --force-vermagic agpgart
还是不行,出现如下错误:

agpgart: no version magic, tainting kernel.
agpgart: Unknown symbol copy_from_user
agpgart: Unknown symbol copy_to_user
agpgart: version magic '2.6.9-1.667 686 REGPARM gcc-3.4' should be '2.6.9-1.667 686 REGPARM 4KSTACKS gcc-3.4'agpgart: no version magic, tainting kernel.
agpgart: Unknown symbol copy_from_user
agpgart: Unknown symbol copy_to_user
agpgart: no version magic, tainting kernel.
agpgart: Unknown symbol copy_from_user
agpgart: Unknown symbol copy_to_user
via_agp: no version magic, tainting kernel.
via_agp: disagrees about version of symbol agp_bridge
via_agp: Unknown symbol agp_bridge
via_agp: disagrees about version of symbol agp_remove_bridge
via_agp: Unknown symbol agp_remove_bridge
via_agp: disagrees about version of symbol agp_alloc_bridge
via_agp: Unknown symbol agp_alloc_bridge
via_agp: disagrees about version of symbol agp_add_bridge
via_agp: Unknown symbol agp_add_bridge
via_agp: disagrees about version of symbol get_agp_version
via_agp: Unknown symbol get_agp_version
via_agp: disagrees about version of symbol agp_put_bridge
via_agp: Unknown symbol agp_put_bridge


请问我哪里出错了?
在kernel中编译module是否这个过程?
发表于 2005-6-23 20:15:31 | 显示全部楼层
必须针对你的内核重新编译!

因为 gcc 和 kernel 所使用的内核也是一个关键因素!
回复

使用道具 举报

 楼主| 发表于 2005-6-23 23:41:25 | 显示全部楼层
但是我的内核版本和所下module都是一样的,都是2.6.9-1.667啊。
而且gcc也是用FC3自带的,没有变过。。。。。
回复

使用道具 举报

发表于 2005-6-24 07:45:18 | 显示全部楼层
via芯片组兼容不好,最好本机器编译!
回复

使用道具 举报

发表于 2005-6-25 01:35:09 | 显示全部楼层
agpgart: version magic '2.6.9-1.667 686 REGPARM gcc-3.4' should be '2.6.9-1.667 686 REGPARM 4KSTACKS gcc-3.4'agpgart: no version magic, tainting kernel.

这句是关键!你一定在开始编译内核的时候启用了 4K STACKS 支持,而在后来为编译模块而重新配置内核的时候没有启用 4K STACKS 支持,这样的模块当然不能用。
回复

使用道具 举报

发表于 2005-6-25 01:36:21 | 显示全部楼层
还有一点:如果启用了 4K STACKS 支持,就无法使用 reiserfs4 文件系统!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-26 05:54 , Processed in 0.059012 second(s), 15 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表