sun1504 发表于 2004-8-7 17:50:08

insmod时出现kernel mismatch问题,欢迎来

我正在一个Linux系统(为方便下面写为A系统,kernel为2.4.1下配置网卡(BroadCom的),需要模块bcm4400.o。
问题是:A系统不具有编译源码的能力(为什么?我也不知道)
我不知怎样才能在别的kernel verison下(手边有RedHat 8.0,9.0)由driver源码编译生成适合kernel 2.4.18的模块。无奈,我在Red Hat8.0(kernel 2.4.18-14)下编译的模块。当插入时出现问题(几乎是必然的!):
$insmod bcm4400
Using /lib/modules/2.4.18/kernel/driver/net/bcm4400.o
/lib/modules/2.4.18/kernel/driver/net/bcm4400.o:kernle-module version mismatch.
/lib/modules/2.4.18/kernel/driver/net/bcm4400.o was compiled for kernel version 2.4.18-14,
while this kernel is version 2.4.18
我想这是一个很普遍的问题(在不同的kernel version下试验同一个driver,只不过这一次的条件不太齐全),应该有人遇到过类似的问题吧。
应该从哪里解决呢?gcc的版本?所链接的库文件的版本?
恳请知道的同志赐教!不胜感谢。

PS:
若强制插入,
$insmod -f bcm4400
则又会出现一堆的"unresolved symbol"的错误。
页: [1]
查看完整版本: insmod时出现kernel mismatch问题,欢迎来