如何在 Qt 4.8 Issues Tab 中显示 C++ 的所有警告?
How to show all warnings of C++ in Qt 4.8 Issues Tab?
在我的 Qt 应用程序中,当我打开一些 CPP 文件时,在某些文件中我看到了如下所述的警告:
- 警告:之前没有非静态变量的外部声明'X'
- 警告:使用旧式转换
- 警告:将 'int' 添加到字符串不会附加到字符串
还有很多我不需要描述的。
我真正想要的是在执行应用程序编译时在 Qt 问题选项卡中显示所有这些错误/警报,但这并没有发生。
为什么不显示它们,有什么方法可以显示它们?
我尝试使用下面的标志,但 none 达到了我想要的效果:
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
我刚刚在 Whosebug 问题中找到这里来抑制警告。
这将使提高软件质量变得更加容易,因为我正在使用的软件是遗留的,除非我逐个文件打开,否则我看不到这些警告。
您在编辑器中看到的警告来自 Qt Creator 的 Clang 代码模型插件。
您可以尝试更改为使用 Clang 而不是 GCC/MSVC 进行编译,它应该有望在编译期间也给您相同的警告。
有关添加编译器的详细信息,请参阅 this 帮助页面。
编辑:您还可以触发手动分析,这将在 "Issues" 窗格中显示代码问题。
为此,打开菜单栏中的 "Analyze" 菜单,然后 select "Clang-Tidy and Clazy..."
在出现的对话框中,select 您要分析的所有文件,还有最上方下拉列表中的 select "Custom Settings",然后是 "Clang-only checks for almost everything [built-in]" 来自第二个下拉。
该选项等同于 Clang 代码模型插件的默认选项,并且应该使分析输出显示与内联注释相同的问题。
准备就绪后,只需单击 "Analyze" 即可开始,然后等待全部完成。
有关如何从 Qt Creator 运行 和配置静态代码分析的更多详细信息,请参阅 this 页面。
在我的 Qt 应用程序中,当我打开一些 CPP 文件时,在某些文件中我看到了如下所述的警告:
- 警告:之前没有非静态变量的外部声明'X'
- 警告:使用旧式转换
- 警告:将 'int' 添加到字符串不会附加到字符串
还有很多我不需要描述的。
我真正想要的是在执行应用程序编译时在 Qt 问题选项卡中显示所有这些错误/警报,但这并没有发生。
为什么不显示它们,有什么方法可以显示它们?
我尝试使用下面的标志,但 none 达到了我想要的效果:
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
我刚刚在 Whosebug 问题中找到这里来抑制警告。
这将使提高软件质量变得更加容易,因为我正在使用的软件是遗留的,除非我逐个文件打开,否则我看不到这些警告。
您在编辑器中看到的警告来自 Qt Creator 的 Clang 代码模型插件。 您可以尝试更改为使用 Clang 而不是 GCC/MSVC 进行编译,它应该有望在编译期间也给您相同的警告。
有关添加编译器的详细信息,请参阅 this 帮助页面。
编辑:您还可以触发手动分析,这将在 "Issues" 窗格中显示代码问题。
为此,打开菜单栏中的 "Analyze" 菜单,然后 select "Clang-Tidy and Clazy..."
在出现的对话框中,select 您要分析的所有文件,还有最上方下拉列表中的 select "Custom Settings",然后是 "Clang-only checks for almost everything [built-in]" 来自第二个下拉。
该选项等同于 Clang 代码模型插件的默认选项,并且应该使分析输出显示与内联注释相同的问题。
准备就绪后,只需单击 "Analyze" 即可开始,然后等待全部完成。
有关如何从 Qt Creator 运行 和配置静态代码分析的更多详细信息,请参阅 this 页面。