Search code examples
linux-kernel

Should I care that the symbol version dump is missing? How do I get one?


I am trying to compile a driver that we have from source and I am working through the issues with a new target environment. One of the slightly disturbing things I see is the following warning:

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

I spent a fair amount of time looking on the web and this is shown in output frequently when other questions are asked, but I didn't see any commentary about whether or not this is an issue.

In any case, how would I tell linux/ubuntu to generate Module.symvers?


Solution

  • Module.symvers is generated when the kernel itself is compiled and ought to be provided to the user as part of the kernel build environment package, however that may look on Ubuntu (possibly broken there?) Fedora and openSUSE for example ship one or more “kernel-devel” (and/or similarly-named) packages that ship this build environment and make the file reachable through /lib/modules/<version>/build/Module.symvers. When using a self-compiled kernel, substitue /lib/modules/version/build for the appropriate path to the build directory (where all the .o files are).