cppcheck找不到包含文件

pic*_*c11 21 c++ cppcheck

cppcheck甚至找不到像iostream这样的标准头文件.有任何想法吗?

我正在使用Ubuntu 11.04和cppcheck来自存储库.

mca*_*dre 26

在Mac和Linux上,cppcheck在查找标准包含标头方面非常糟糕.幸运的是,您可以禁止此检查,并且只扫描您的自定义头文件:

cppcheck --enable=all --suppress=missingIncludeSystem .
Run Code Online (Sandbox Code Playgroud)

  • 这个 supress-flag 给了我以下错误:`Unmatched抑制:missingIncludeSystem`...或者这只是意味着检查没有抑制任何arror?那么我可以抑制非抑制的抑制错误吗?哦:) (5认同)
  • 是的,您可以使用 --suppress=unmatchedSuppression 来抑制“不匹配的抑制”错误。:) (2认同)
  • 从手册页来看,我认为它现在被命名为“missingIninclude”。 (2认同)

小智 18

建议不要提供标准C/C++标头的路径--Cppcheck具有有关ANSI C/C++的内部知识,不建议重新定义此已知功能.但随意尝试一下.

-I [dir]
Run Code Online (Sandbox Code Playgroud)

给包含路径.给出几个-I参数以提供多个路径.首先检查第一个给定路径.如果路径相对于源文件,则不需要这样做.

  • 并且不要将它与'-i'(忽略)选项混淆. (5认同)
  • 如果引入大量标题,`-I`选项可以使`cppcheck`运行得非常慢. (3认同)