19

我正在尝试获取有关大型程序流程的一些信息。KCachegrind 过去在这方面做得很好。但是我的系统(Kubuntu 10.10)上的最新版本(0.6kde)不会显示调用树和调用者映射。它只用当前函数绘制一个框,但没有箭头,也没有调用者。这是控制台输出:

kcachegrind(27917)/kdecore (services) KMimeTypeFactory::parseMagic: Now parsing  "/usr/share/mime/magic"
QInotifyFileSystemWatcherEngine::addPaths: inotify_add_watch failed: No such file or directory
QFileSystemWatcher: failed to add paths: /home/cosmin/.config/ibus/bus
Bus::open: Can not get ibus-daemon's address. 
IBusInputContext::createInputContext: no connection to ibus-daemon 
CallGraphView::refresh 
CallGraphView::refresh: Started process 0x1346f50, 'dot -Tplain'
CallGraphView::readDotOutput: QProcess 0x1346f50
CallGraphView::dotExited: QProcess 0x1346f50

我安装了 dot (graphviz),并且应用程序是使用 -g -O0 编译的。

你知道问题可能出在哪里吗?

4

1 回答 1

40

哎呀...我打电话valgrind --tool=cachegrind而不是valgrind --tool=callgrind.

于 2010-11-17T13:25:38.210 回答