无法对库中的线程进行概要分析

时间:2015-12-08 02:39:04

标签: c++ linux gperftools

我正在尝试使用Google Performance Tools,特别是64位Ubuntu 14.04存储库中的官方版本来调试应用程序及其关联的.so库。

运行最少的更改,只需确保设置-g,就可以获得跟踪,但只有主要可执行文件中的几个符号。按照the rather minimal documentation中的建议将ProfilerRegisterThread()添加到库中的线程实际上会使事情变得更糟,输出的符号更少,只有十六进制地址。

如何正确分析库中的线程?

1 个答案:

答案 0 :(得分:0)

pprof使用addr2line进行地址到符号的解析。如果启用了ASLR,则addr2line将不起作用。尝试禁用ASLR。

另一种可能性是为pprof实现HTTP服务器接口,并使用libbacktrace之类的东西来实现地址到符号的解析。