我正在使用Qt Creator开发一个C ++应用程序,我正在尝试追踪一些内存泄漏。

我遵循了这些说明 *,并在我的Ubuntu机器上安装了Valgrind。

我从Analyze Memory部分开始我的应用程序,点击停止按钮后,我被告知Tool Analyze Memory finished, 928 issues found 但是,分析部分中没有显示结果,该结果仍为空白。

难道我做错了什么? 我在哪里可以找到内存分析的结果?


*令人困惑的是,指令要求“发布”构建配置,但选择此项会在Qt中发出警告,指出内存分析工具需要调试配置。 我试过两种方式。

===============>>#1 票数:11

我在我的Qt Creator中检查了它并且它有效。 我使用的是版本2.3.1和Qt 4.7.4以及Valgrind 3.7.0。 我已经使用Debug构建配置在dropsite示例上测试了它。 我也用我的基于CMake的项目(用-g和-O0标志编译)测试了它,它也有效。 确保选择启动按钮旁边的Valgrind Memory Analyzer 在同一个栏上你会找到箭头图标。 它们旁边是漏斗的图标(我想)。 单击它并确保检查您感兴趣的错误类型。

如果它不起作用,并且您不想从控制台使用Valgrind工具,那么还有其他Valgrind GUI,如Valkyrie。

编辑:我已经将Qt Creator更新到版本2.4.0rc1并使用我的CMake项目进行了检查。 它也没有显示任何结果,同时报告了几百个问题。 解决方法是在点击漏斗图标后检查External errors

编辑2:在最后的2.4.0问题得到修复。

===============>>#2 票数:1

你没有做错任何事。 在Valgrind菜单中,按Filter图标并选择External Errors 您将看到所有问题出现。 这些很可能不是来自你的应用程序,而是Qt-或其他相关的,所以你经常可以忽略它们。

X issues found是指X issues found的总数; 如果未选择“ External Errors ,则仅显示与您的应用程序相关的External Errors 如果没有出现,Valgrind没有在您的应用中检测到任何内存泄漏。

  ask by Bill Cheatham translate from so

未解决问题?本站智能推荐:

1回复

我想在我的Qt项目中使用gdb。。但是我收到“权限被拒绝”消息吗?

我在Ubuntu上有一个Qt项目。 我想使用valgrind分析。 我写了这个命令: gcc myApp.pro -o myApp -g 但我收到此错误: 无法识别文件格式 或者我写了这个命令: valgrind ./myApp.pro 我收到此错误: ./myApp.pr
1回复

将Valgrind集成到Qt Creator中

我想知道为什么我不能在Qt Creator中使用valgrind分析器。 Valgrind已安装并从命令行运行,但在Qt Creator中不存在。 别人有这个问题吗? 基于Qt 4.7.0(64位)的QtCreator 2.01 Ubuntu 11.04 x64 g ++-4.5
1回复

Qt设计器指定的QDialog与valgrind问题

我正在用Qt Creator开发一个简单的原型。 我已经使用设计师来设计我的窗户。 假设我们主窗口有一个菜单,其中包含一个名为“挂起”的选项。 当选择此选项时,它称为方法MainWindow::on_actionSuspend_triggered()其简化的实现可以按如下方式恢复:
1回复

Mac OSX上的Valgrind Qt应用程序-报告不兼容的处理器

我在使用Unix或Mac OSX上的终端上使用编译链方面并没有真正的经验,所以我只是假设我在此期间犯了一个很大的错误,但是谁知道呢。 我正在尝试在2012年中的MacBook Pro的Mac OSX 10.7.5上将Valgrind与Qt Creator结合使用。 我正在使用Qt 5.0
1回复

Qt5Cored!Qobject :: disconnect…在0x0处读取访问冲突

下面介绍了该问题以及我为“更正”它们所做的工作。 此运行时事件需要几个小时才能解决。 由于该网站是我最喜欢的信息来源之一,因此认为这可能会使某人受益。 我确信此异常是由我对QObjectCleanupHandler的误解造成的。 对于QObjectCleanupHandler的实际实
2回复

如何在Qt Creator中为valgrind启用--leak-check = yes?

系统信息: Ubuntu 16.04,Qt Creator 4.2.0,valgrind 3.12.0 当从控制台使用valgrind输出详细的泄漏分析时,我这样做: valgrind --leak-check=yes ./my_application --an_argument
1回复

如何在QT Creator中使用FMOD工具?

我想在我的QT项目中插入FMOD dll文件和头文件。 我使用QT Creator,但我不知道如何添加FMOD API。 我该怎么办?
3回复

如何安装Qt

我必须在Windows上安装Qt才能使用C ++创建应用程序。 我面临的问题是,在安装qt-win-opensource-4.8.3-vs2008.exe和qt creator之后,许多事情突然发生了。 打开qt-creator时,找不到任何示例:“找不到示例”。 同样,Qt创建者的菜单栏
1回复

如何让Callgrind访问Qt项目的源代码?

我使用Qt Creator在Debug模式下构建了一个Qt项目,运行Callgrind生成概要分析数据,然后尝试将其加载到Cachegrind中。 我注意到我只看到有关Qt类的分析信息,所以我认为我一定忘了打开关键标志。 Qt Creator的qmake命令如下所示: 一个文件的
1回复

在QTextEdit或Qt-Creator上的connect()中使用指针

早上好,我希望QText更改时QTextEdit可以动态更改值。 举个例子: 我也在考虑使用connect()函数,但是我不知道如何使用它,我在互联网上找到了一些示例: 我想知道是否有可能以及如何做? 预先感谢您的帮助,