我使用 Visual Studio 安装了 clang,然后按照文档中所述构建了突出显示的项目。
构建成功,但是当我尝试这样做时:
clang -cc1 -analyze -analyzer-checker=core.DivideZero test.c
It says:
test.c:1:10: fatal error: 'stdio.h' file not found
#include <stdio.h>
^~~~~~~~~
1 error generated.
我尝试了很多建议但没有任何效果。
但是如果我做这样的事情它会起作用
clang --analyze text.c
我不知道这是否使用了所有可用的检查器。我需要编写自己的检查器并测试它......
有任何想法吗?
输出clang --version
clang version 7.0.0 (trunk 322536)
Target: i686-pc-windows-msvc
Thread model: posix
InstalledDir: C:\path\build\Debug\bin
是的,我有一个主意。消除-cc1
or <stdio.h>
。根据铿锵常见问题解答这是你的错误。它非常明确地指出,给出了您的精确示例:
$ clang -cc1 hello.c
hello.c:1:10: fatal error: 'stdio.h' file not found
#include <stdio.h>
^
1 error generated.
继续阅读,它提供了其他替代解决方案以及有用的解释,您当然应该完整阅读它们,因为作为程序员,我们的工作就是阅读我们所使用的技术的手册。
clang -cc1
是前端,clang
是司机。驱动程序使用适合您的系统的选项调用前端。要查看这些选项,请运行:
$ clang -### -c hello.c
Some clang
命令行选项是仅限驱动程序的选项,有些是仅限前端的选项。仅前端选项仅供 clang 开发人员使用。用户不应该运行clang -cc1
直接,因为-cc1
选项不保证稳定。
如果您想使用仅前端选项(“a-cc1
选项”),例如-ast-dump
,那么你需要采取clang -cc1
驱动程序生成的行并添加您需要的选项。或者,您可以运行clang -Xclang <option> ...
迫使司机通过<option>
to clang -cc1
.
重点是我的。这将为您提供足够的指导来完成您需要完成的工作。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)