我是否应该关心缺少符号版本转储?我怎么得到一个?

sag*_*age 8 linux-kernel

我正在尝试从源代码编译一个驱动程序,我正在处理新目标环境的问题.我看到的一个令人不安的事情是以下警告:

  WARNING: Symbol version dump /usr/src/linux-2.6.38/Module.symvers
           is missing; modules will have no dependencies and modversions.

我花了相当多的时间在网上查看,当问到其他问题时,这会在输出中显示,但我没有看到关于这是否是一个问题的任何评论.

在任何情况下,我如何告诉linux/ubuntu生成Module.symvers?

jør*_*sen 8

Module.symvers在内核本身被编译时生成,并且应该作为内核构建环境包的一部分提供给用户,但是可以看一下Ubuntu(可能在那里打破?)Fedora和openSUSE例如发送一个或多个"kernel-devel" "(和/或类似命名的)软件包,它们提供此构建环境并使文件可通过/lib/modules/<version>/build/Module.symvers.使用自编译内核时,将/ lib/modules/version/build替换为构建目录的适当路径(所有.o文件都在其中).

  • 您不必重建内核.编译模块时只需要给构建目录提供正确的路径:make -C/lib/modules/$ VERSION/build M = $(PWD)modules (2认同)