在编译相互依赖的 Linux 内核模块时,链接器会给出未定义的符号警告,例如
Building modules, stage 2.
MODPOST
*** Warning: "function_name1" [module_name] undefined!
*** Warning: "function_name2" [module_name] undefined!
*** Warning: "function_name3" [module_name] undefined!
一旦使用 insmod 或 modprobe 将模块插入内核,未解析的符号就会被解析。不过,有什么办法可以摆脱链接器警告吗?
我已经阅读了关于这个问题的 3 个 Google SERP - 似乎没有人知道答案。当您构建内核模块时,这些链接器警告是否应该是这种方式?