配置新内核构建时如何处理闭源模块

配置新内核构建时如何处理闭源模块

我发现这个命令非常有用:

make localmodconfig

但是,拥有一些闭源驱动程序/模块是一个问题,因为此命令找不到适当的方法来包含与我的闭源软件相关的配置参数。

我的问题是:例如,如果我fglrx安装了该模块,我该如何配置我的内核版本?

答案1

闭源驱动程序不是 Linux 内核源代码发行版的一部分,因此不能偶然使用 Linux 内核 makefile 来构建。
它们通常由制造商作为文件包单独提供,其中包括按照提供的说明运行的必要脚本,以便将驱动程序正确安装在系统上。

在特定情况下(现已弃用)fglrx 专有驱动程序,所需的文件将被打包为 .rpm 并提供:

自述文件或一组文档页面、
用于 2D 支持的 DRI 兼容驱动程序模块、
用于 OpenGL 支持的 DRI 兼容驱动程序模块、
内核模块(预编译的二进制文件以及用于自构建的源/lib)

和杂项。其他公用事业

或者,根据您的 Linux 发行版以及驱动硬件的广泛程度,关联的存储库可能会提供一些专用软件包,这些软件包可以根据专用软件包管理器的说明安装专有驱动程序,例如,关于尚未弃用的 fglrx 驱动程序:

emerge media-video/ati-drivers # gentoo portage way
apt-get install fglrx-driver # debian way

这是首选方法,因为这将确保与已安装的软件完美集成,最终建议依赖项升级(依赖项)并使包管理器最终建议驱动程序升级(如果可用)。

某些内核 CONFIG_* 选项可能需要调整才能使专有驱动程序正确运行。当专有驱动程序的开源替代品在内核中编译时尤其如此,这会导致冲突情况。
就像 fglrx 驱动程序会发生的情况一样,如果CONFIG_DRM_RADEON=[y]

所有最好的发行版都会详细记录这些要求。当然,如果此时需要进行任何更改,则必须重新构建内核。

相关内容