Valgrind

时间:2018-10-17 14:30:19

标签: compilation valgrind debug-symbols

我们正在Ubuntu 16.04上编译cpp应用程序。

我们在编译期间启用了调试符号(在两种情况下,我们都使用-g和-ggdb3进行了尝试,都禁用了优化标志),这一事实得到了我们能够正确使用GDB(设置断点等)的证实。

现在,我们希望有一个调用树,因此我们使用Valgrind(callgrind)。它执行起来没有错误,但是当我们看一下上述树时,我们会得到类似的东西。

这就是我们得到的(请注意,它抱怨缺少调试信息):

enter image description here

有任何线索吗?

编辑:好的,所以我们发现我们需要在同一台计算机上调用Kcachegrind才能查看源代码。上面的屏幕截图来自另一台打开Valgrind输出文件的计算机。事实是,即使我们确实在同一台机器上启动它(因此我们的源代码可以在“源”选项卡下访问),代码输出调用图仍然不可读。考虑到Valgrind返回以下警告,问题可能出在代码的编写方式上: enter image description here

0 个答案:

没有答案