如何解决 Cppcheck 中的问题 ID“toomanyconfigs”和“missingInclude:”
Posted
技术标签:
【中文标题】如何解决 Cppcheck 中的问题 ID“toomanyconfigs”和“missingInclude:”【英文标题】:How to resolve the Issue ID "toomanyconfigs" and "missingInclude:" in Cppcheck 【发布时间】:2016-08-23 05:51:41 【问题描述】:我正在使用 Visual Studio 2008 处理 MFC 应用程序(大约 2000 个文件)。我为此应用程序运行 Cppcheck,但发现了这两个问题。
Issue toomanyconfigs: (Information -- 由于#ifdef 配置太多,文件的检查将被中断。检查所有#ifdef 配置可以通过--force 强制命令行选项或 GUI 首选项。但是这可能会增加检查时间。)
问题missingInclude:(信息--Cppcheck 找不到所有的包含文件。Cppcheck 可以在没有找到包含文件的情况下检查代码。但是如果所有的包含文件,结果可能会更准确找到包含文件。请检查您项目的包含目录,并将它们全部添加为 Cppcheck 的包含目录。要查看 Cppcheck 找不到哪些文件,请使用 --check-config。)
我的 Cppcheck 参数列表是 cppcheck --quiet --verbose --check-config --force --enable=all --suppress=missingIncludeSystem --template=vs --std=c++11 $(ItemPath)
我该如何解决这些问题?
【问题讨论】:
【参考方案1】:我是一名 Cppcheck 开发人员。
当你使用--force
时得到 toomanyconfigs 很奇怪。如果您可以创建一个重现问题的文件,请在our issue tracker 中报告。您可能可以删除文件中的所有代码,只保留预处理器指令。
您可以使用-I
指定包含路径。
Cppcheck-1.76(下一版本)将能够导入 Visual Studio 2010 及更高版本的解决方案文件,以便您自动获取包含路径。也许测试起来会很有趣。
【讨论】:
以上是关于如何解决 Cppcheck 中的问题 ID“toomanyconfigs”和“missingInclude:”的主要内容,如果未能解决你的问题,请参考以下文章