clang如何获得程序控制流图

在低版本的clag中,可以直接clang -cc1 -analyze -cfg-dump 1.c来获得程序控制流图,但较高版本后就不行了 

另外clang -cc1默认仅限当前目录,所以会出现fata error: 'stdio.h' file not found 的情况。

解决方法是使用-I添加包含库,

 1 clang -cc1 -I/usr/include -I/home/blessing/clang-llvm/build386/lib/clang/5.0.0/include -analyze -analyzer-checker=debug.DumpCFG 1.c 

第一个包含库中含有stdio.h,第二个库中有stdder.h,之后还有需要的库还可以继续添加。

如果想要将结果输出到文件中,可以在终端先输入 script -f CGF.txt ,这样就可以将当前的命令行的输出全写到文件中去了

原文地址:https://www.cnblogs.com/61355ing/p/10676146.html