首页 > 解决方案 > 如何在 Qt 4.8 问题选项卡中显示 C++ 的所有警告?

问题描述

在我在 Qt 中的应用程序中,当我打开一些 CPP 文件时,我会看到如下所示的警告:

还有许多我不需要描述的。

我真正想要的是在执行应用程序编译时将所有这些错误/警报显示在 Qt 问题选项卡中,但这不会发生。

为什么没有呈现它们,有没有办法呈现它们?

我尝试使用下面的标志,但没有一个达到我想要的效果:

CONFIG += warn_on
CONFIG += exceptions

QMAKE_CFLAGS_WARN_ON = -w -Wall -Wextra
QMAKE_CXXFLAGS_WARN_ON = -w -Wall -Wextra

CFLAGS += -Wall
CXXFLAGS += -Wall

QMAKE_LFLAGS += thread
QMAKE_LFLAGS += exceptions

我刚刚在 stackoverflow 问题中找到了抑制警告。

这将使提高软件质量变得更加容易,因为我正在使用的软件是遗留软件,除非我逐个文件打开,否则我看不到这些警告。

标签: c++qtg++gcc-warning

解决方案


您在编辑器中看到的警告来自 Qt Creator 的 Clang 代码模型插件。您可以尝试更改为使用 Clang 而不是 GCC/MSVC 进行编译,希望它在编译过程中也会给您同样的警告。

有关添加编译器的更多信息,请参阅帮助页面。


编辑:您还可以触发手动分析,这将在“问题”窗格中显示代码问题。

为此,请打开菜单栏中的“分析”菜单,然后选择“Clang-Tidy and Clazy...”

在出现的对话框中,选择您要分析的所有文件,并从最顶部的下拉菜单中选择“自定义设置”,然后从第二个下拉菜单中选择“仅 Clang 检查几乎所有内容 [内置]”。

该选项等效于 Clang 代码模型插件的默认选项,并且应该使分析输出显示与内联注释相同的问题。

准备好后,只需单击“分析”即可开始,然后等待全部完成。

有关如何从 Qt Creator 运行和配置静态代码分析的更多详细信息,请参阅此页面。


推荐阅读