callgrind 函数名称不会显示在子进程中
我有一个进程 A,它分叉了进程 B。A 和 B - 是不同的应用程序。两者都使用 -g 标志编译。
要使用 callgrind 运行它,我使用命令: valgrind --tool=callgrind --trace-children=yes ./A [params]
父进程 (A) 的 callgrind.out.xxx 包含函数名称。对于子进程(B) - 它不包含。这里可能出了什么问题?
谢谢
I have process A wich forks process B. A and B - are different application. Both compiled with -g flag.
to run it with callgrind I use command:
valgrind --tool=callgrind --trace-children=yes ./A [params]
callgrind.out.xxx for parent process (A) contains function names. for child process(B) - it doesn't contains. What could be wrong here?
Thanks
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您尝试过最新版本的 valgrind 吗?
当前唯一对我来说显而易见的问题是:
...您必须确保输出文件格式字符串(由 --callgrind-out-file 控制)确实包含 < strong>%p(默认情况下为 true)。否则,父级和子级的输出将相互覆盖或混合,这几乎肯定不是您想要的。
摘自 callgrind 文档。
Have you tried with latest version of valgrind ?
The only current problem which seems obvious to me is:
...you will have to make sure that the output file format string (controlled by --callgrind-out-file) does contain %p (which is true by default). Otherwise, the outputs from the parent and child will overwrite each other or will be intermingled, which almost certainly is not what you want.
extracted from callgrind documentation.