在使用“ bazel run”命令构建并执行目标时,可以使用参数“ --run_under =”为执行添加前缀valgrind。 Valgrind通常将其结果文件输出到目标目录中,但是在使用bazel run进行运行时,找不到输出文件。
5
将在我的目标上运行callgrind:
bazel run //path/to/package:target_name --copt="-g" --run_under='valgrind --tool=callgrind'
通常,'callgrind.out'文件将被写入当前目录,但是我在任何地方都找不到它。
答案 0 :(得分:0)
您在上面提供的输出似乎不完整。 Callgrind输出例如通过捕获的事件终止。
无论如何,您可以使用以下选项控制callgrind在何处创建结果文件:
--callgrind-out-file=<f> Output file name [callgrind.out.%p]
给定的文件名可以以目录名称开头。如果将启动多个进程,请不要忘记使用%p(在这种情况下,请使用--trace-children = yes)。