查找在实时系统上定义的共享库符号在哪里/列出系统上导出的所有符号
基本上,这是两个问题合而为一-因为如果我可以列出系统中导出的所有符号以及它们的共享库路径,那么我可以简单地grep输出该内容。 对于内核符号,我想它会更容易-因为我们可以始终cat /proc/kallsyms获取加载到内存中的那些模块的所有符号的列表;然后sudo cat /proc/modules会提供已加载模块及其地址的列表,但不会给出模块从其加载的路径(如果它们是作为单独的树外.ko对象构建的) 例如,我尝试kst使用ltrace以下方法跟踪程序: $ ltrace kst2 ... _ZNK13QGraphicsItem10parentItemEv(0xa1ccdb4, 0, 0xbfe631a8, 0x823652b, 0xbfe63298) = 0xa1ce854 __dynamic_cast(0xa1ce854, 0x839ff00, 0x8306b80, 84, 0xbfe63298) = 0xa1ce800 _ZNK13QGraphicsItem10parentItemEv(0xa1ccdb4, 0x839ff00, 0x8306b80, 84, 0xbfe63298) = 0xa1ce854 __dynamic_cast(0xa1ce854, 0x839ff00, 0x8306b80, 84, 0xbfe63298) = 0xa1ce800 ... ...,我想知道它在哪里_ZNK13QGraphicsItem10parentItemEv。 那么,如何处理共享库符号?阅读[gcc-help] Re:查找定义了符号的库。; 我尝试过这样的事情: $ find /usr/lib -name '*.so*' -exec nm …