如何在Qt 4.8问题标签中显示C ++的所有警告?

时间:2018-08-09 11:59:00

标签: c++ qt g++ gcc-warning

在Qt内的应用程序中,当我打开一些CPP文件时,在某些情况下,我会看到类似下面所述的警告:

  • 警告:非静态变量“ X”之前没有外部声明
  • 警告:使用老式强制转换
  • 警告:在字符串中添加“ int”不会追加到字符串中

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

我真正想要的是在执行应用程序编译时将所有这些错误/警报显示在“ 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问题中发现了禁止警告的信息。

这将使提高软件质量变得更加容易,因为我正在使用的软件是旧版软件,除非我逐个打开文件,否则我对这些警告一无所知。

1 个答案:

答案 0 :(得分:2)

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

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


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

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

在出现的对话框中,选择要分析的所有文件,然后从最上方的下拉列表中选择“自定义设置”,然后从第二个对话框中选择“仅对所有[内置文件]进行纯语言检查”下拉。

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

准备就绪后,只需单击“分析”开始,然后等待所有步骤完成。

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