【发布时间】:2013-10-25 16:57:51
【问题描述】:
我正在开发一个非常复杂的 Linux 驱动程序。我正在移动一些文件以尝试“减少脂肪”。我有 4 个“未定义!”链接阶段的符号。我已经搜索了我的源代码,但我真的不知道这些符号包含在哪里。
我想如果我在我编译的 .ko 上做一个objdump -DS 并搜索这些符号,我可能能够从周围的反编译源中判断它们来自哪里。但是,当我搜索符号时,它们甚至都找不到!
有没有办法知道未定义的符号在哪里或如何被包含在内?
【问题讨论】:
-
也许你可能会检查 GCC 的一些中间 Gimple 表示,或者将
-fdump-tree-all传递给 GCC 或使用 MELT .... -
@unexpected62 未定义符号是什么?
-
未定义的符号是我的代码,没有 Linux 通用的,所以名称不相关。不过我想通了,请参阅下面的答案。
标签: linux linux-kernel driver linux-device-driver objdump