在两个不同的发行版上编译发行版非特定内核

在两个不同的发行版上编译发行版非特定内核

我下载了内核3.2.1来自 kernel.org。编译“成功”OpenSuse 11.3 64 位

当我尝试编译相同的内核源代码时乌班图11.10, 我有:

ERROR: "__modver_version_show" [drivers/staging/rts5139/rts5139.ko] undefined

然后,我复制了.config从该机器(默认情况下使用 Ubuntu)上存在的默认内核(Ubuntu)到内核 3.2.1 的文件夹。做过制作菜单配置再次保存,不做任何更改。但是,同样的错误仍然存​​在。另外,尝试过.config.旧但这也没有帮助。

无论如何,我的问题是,如果内核是不带偏见的未受影响的,那么为什么编译结果在不同的发行版上会有所不同,假设:
1. 两台机器都是 x 位?
2.两台机器都是最新的,内核也是最新的。

内核不读取.config在它自己的文件夹中,并在此基础上决定加载哪个模块,不加载哪个模块?这与编译期间现有的发行版有什么关系?

答案1

我认为这只是代码的依赖问题rts5139在Ubuntu上。我打赌还有其他有关未实现的依赖项的相关警告(在该内核模块的构建过程中)。

所以答案可能是:Ubuntu 上缺少一个依赖项,而 OpenSuSE 中却满足了这个依赖项。后者偶然安装了它(可能是某种工具或库)。

也许您可以检查构建输出rts5139在 OpenSuSE 上看看有什么,而不是 Ubuntu 中缺少什么。

相关内容