解决3.2.0 kernel编译问题:ERROR: "__modver_version_show"

内核编译和嵌入式产品的设计与开发
回复
new_day1207
帖子: 4
注册时间: 2011-12-27 13:49

解决3.2.0 kernel编译问题:ERROR: "__modver_version_show"

#1

帖子 new_day1207 »

原来对linux一无所知开始,由于准备搞RT Linux,被迫投入linux阵营 :em06
安装的是ubuntu 11.10,下载3.2.0的kernel,先编译kernel,结果碰到如下出错信息:
ERROR: "__modver_version_show" [drivers/staging/rts5139/rts5139.ko] undefined!
安装原来的编译经验,应该是__modver_version_show未实现,或者实现体未编译进来,但是发现params.c中已经实现,params.o已生成并有链接,module.h中也有声明,但是有宏分割。怀疑是宏达问题,研究了半天makefile和头文件包含,未果。放狗上网一搜,发现在3.0.0开始,国外的国内的网站、论坛上就已经有人陆陆续续反映这个问题。有一些解决方法,但是发现在3.2.0中已经引入了,而问题依旧。没办法,只能自力更生了。
常规思路,既然解决不了,就研究研究有没有办法规避。前面编译过2.6.25.11的kernel没有发现过此问题,对比代码发现__modver_version_show函数定义实现是新引入的(个人猜测是3.0.0开始引入的)。然后再看了下staging这个目录的用途,说是一些不成熟驱动代码的专用目录,主要是希望放到社区上让大家测试的,成熟以后再并入主干。哈哈,眼睛一亮,好,既然是不成熟,哥就把它阉割掉,应该对系统没啥影响。想到就做,在make menuconfig配置选项中找到了staging这个配置项,直接选择为N([]中为空),重新编译,问题解决。
3.2.0 kernel能正常启动,打RT补丁正常,RT Linux启动正常。
这个问题对开发人员来说应该只是个小问题,但苦于对linux不熟,让哥这个老程序员急切间还真是无从下手,放狗网上也没搜到啥有用的解决方法。估计还有很多像哥一样的入门人浪费时间在这个问题上,所以特把解决方法说出来,共享之!
头像
ud狼图腾
帖子: 75
注册时间: 2010-03-23 11:20

Re: 解决3.2.0 kernel编译问题:ERROR: "__modver_version_show"

#2

帖子 ud狼图腾 »

MODPOST 3070 modules
ERROR: "__modver_version_show" [drivers/staging/rts5139/rts5139.ko] undefined!
WARNING: modpost: Found 4 section mismatch(es).
To see full details build your kernel with:
'make CONFIG_DEBUG_SECTION_MISMATCH=y'
make[2]: *** [__modpost] 错误 1
make[1]: *** [modules] 错误 2

:em11 就是这个问题。。。。
正在重新编译。。。
百度给个面试机会呗。。
user000000
帖子: 4
注册时间: 2012-03-17 21:14

Re: 解决3.2.0 kernel编译问题:ERROR: "__modver_version_show"

#3

帖子 user000000 »

:em11
非常感谢,解决了我的问题~
wjhbh
帖子: 50
注册时间: 2009-01-08 18:53

Re: 解决3.2.0 kernel编译问题:ERROR: "__modver_version_show"

#4

帖子 wjhbh »

感谢楼主的共享,解决了我的问题 :em11
若为平生
帖子: 1
注册时间: 2012-09-24 17:14
系统: Ubuntu

Re: 解决3.2.0 kernel编译问题:ERROR: "__modver_version_show"

#5

帖子 若为平生 »

请问下我编译的3.3.4没有staging选项该怎么办。。
头像
ud狼图腾
帖子: 75
注册时间: 2010-03-23 11:20

Re: 解决3.2.0 kernel编译问题:ERROR: "__modver_version_show"

#6

帖子 ud狼图腾 »

若为平生 写了:请问下我编译的3.3.4没有staging选项该怎么办。。
木有staging 当然就不会出现这个错误了 :em05 :em04
百度给个面试机会呗。。
ly812159431
帖子: 5
注册时间: 2012-11-12 23:39
系统: Ubuntu 12.04

Re: 解决3.2.0 kernel编译问题:ERROR: "__modver_version_show"

#7

帖子 ly812159431 »

我编译的是3.6.6的内核。出现了完全一样的问题,去哪里找那个staging选项啊?
回复