如何检查构建包时使用的内核版本

如何检查构建包时使用的内核版本

apt在从 Ubuntu 存储库下载软件包时使用。如何检查构建包时使用的内核版本?
什么时候它很重要(构建服务器的内核版本与安装包的计算机的内核版本)?

答案1

这几乎从来不重要。如果您确实担心构建系统,则应该在考虑内核之前考虑编译器、库和标头版本。

代码本身是否“记住”内核版本取决于代码本身。有些软件包会存储一个表示编译器版本的字符串,因为这更为重要。事实上,内核本身会这样做(请参阅 的内容/proc/version)。

答案2

我不会添加任何关于了解内核版本的重要性或不知道的内容,因为上面的评论和答案已得到充分解释。

但作为对你在上面的回答中的评论的回答

图形驱动程序(内核构建与运行环境)怎么样?

您必须关心的是gcc编译内核的版本,因此您必须使用与图形驱动程序相同的版本(特别是 Nvidia)。

你需要cat/proc/version文件。该文件标识当前正在运行的内核版本以及gcc用于构建内核的版本。

$ cat /proc/version
Linux version 3.2.0-23-generic (buildd@crested) (gcc version 4.6.3 (Ubuntu/Linaro 4.6.3-1ubuntu4) ) #36-Ubuntu SMP Tue Apr 10 20:39:51 UTC 2012

作为示例,开始使用 gcc-4.6 构建 NVIDIA 模块:

$ export CC=/usr/bin/gcc-4.6
$ bash NVIDIA-Linux-***.run

相关内容