如何在Qt Creator中为valgrind启用--leak check=yes?
系统信息:Ubuntu 16.04、Qt Creator 4.2.0、valgrind 3.12.0 从控制台使用valgrind输出详细泄漏分析时,我是这样做的:如何在Qt Creator中为valgrind启用--leak check=yes?,qt,memory-leaks,qt-creator,valgrind,Qt,Memory Leaks,Qt Creator,Valgrind,系统信息:Ubuntu 16.04、Qt Creator 4.2.0、valgrind 3.12.0 从控制台使用valgrind输出详细泄漏分析时,我是这样做的: valgrind--leak check=yes./my_应用程序--a_参数 由于我想使用Qt Creator的输出格式和对报告问题的过滤,我尝试在编辑器中使用valgrind,但我无法为valgrind本身配置任何参数(例如--leak check)。该对话框如下所示: 我可以在配置文件或隐藏对话框选项中的某个位置执行此操作吗
valgrind--leak check=yes./my_应用程序--a_参数
由于我想使用Qt Creator的输出格式和对报告问题的过滤,我尝试在编辑器中使用valgrind,但我无法为valgrind本身配置任何参数(例如--leak check)。该对话框如下所示:
我可以在配置文件或隐藏对话框选项中的某个位置执行此操作吗
Edit:我接受了明确提到--leak check选项的答案,但其他提到Qt Creator内部的包装器脚本的答案是一个非常好的选择。不幸的是,与控制台的valgrind相比,Qt Creator中的输出仍然存在差异,因此我猜Qt Creator中使用了抑制文件。。。但这是另一个主题。将“完成时检查泄漏”选项值设置为“完全”:
这将产生
'--leak check=full'
valgrind选项,该选项相当于'--leak check=yes'
将“完成时检查泄漏”选项值设置为“full”:
这将产生
'--leak check=full'
valgrind选项,它相当于'--leak check=yes'
,在最坏的情况下,您可以使用所需的选项为valgrind
二进制文件创建包装。您可以在以下位置创建一个可执行文件valgrind
:
#!/bin/bash
exec /usr/bin/valgrind --leak-check "$@"
然后在QtCreator设置中,将新文件的文件路径放入
Valgrind executable
字段 在最坏的情况下,您可以使用所需的选项为valgrind
二进制文件创建包装。您可以在以下位置创建一个可执行文件valgrind
:
#!/bin/bash
exec /usr/bin/valgrind --leak-check "$@"
然后在QtCreator设置中,将新文件的文件路径放入
Valgrind executable
字段 谢谢,但结果不同。我故意将不同的泄漏代码行放在不同的源文件中,通过控制台使用valgrind正确检测到这些代码行。我已经在对话框中使用了设置,但它们似乎还有另一个影响。您如何知道此选项应反映“-leak check=yes”功能?如果我想以另一种方式定制valgrind的行为呢?我已经检查了Qt创建者。你已经完成了你的家庭作业!:-)“是”和“完全”之间只有很小的区别,所以我将进一步研究。暂时谢谢你!只是澄清一下:要打开valgrind设置,您需要单击顶部菜单中的“工具”,然后单击左侧列表中的“参数”,然后单击“分析器”。谢谢,但结果不同。我故意将不同的泄漏代码行放在不同的源文件中,通过控制台使用valgrind正确检测到这些代码行。我已经在对话框中使用了设置,但它们似乎还有另一个影响。您如何知道此选项应反映“-leak check=yes”功能?如果我想以另一种方式定制valgrind的行为呢?我已经检查了Qt创建者。你已经完成了你的家庭作业!:-)“是”和“完全”之间只有很小的区别,所以我将进一步研究。暂时谢谢你!只是澄清一下:要打开valgrind设置,您需要单击顶部菜单中的“工具”,然后单击左侧列表中的“参数”,然后单击“分析器”。谢谢您的提示。过去我在一些特殊配置中使用过这种方法。我暂时保留这个问题,但这绝对是一个有效的解决方案:-)谢谢你的提示。过去我在一些特殊配置中使用过这种方法。我暂时保留这个问题,但这绝对是一个有效的解决方案:-)