随着铛和graphviz我可以生成一些C/C++代码as explained in this answer调用图。如何使用clang或其他工具生成数据流图?
现在我需要一个在一个非常大的代码库(大部分是C)上计算的数据流图,这个代码库是一个软件,其中cmake
被用作构建工具。
所以我的问题是,给定一个数据结构的名称,我怎么可能检索函数的名称和使用/实现此结构的文件?
有一些稀疏的参考一些数据流挖掘算法里面Libtool
从铛项目(甚至不知道它的东西,保持稳定或发展),但我没有发现任何关于clang
本身或scan-build
。
我该如何生成这条信息?我真的需要这样做,鉴于我想检索代码中使用的名称,几乎所有我已经查看过的静态分析工具都关注函数和方法,我需要检查clang
中的数据结构使用情况。
编辑:
,我也在考虑使用的doxygen的文档,所以如果的doxygen的XML输出可能是一些有用的工具,我可以用它。
这可能有点古怪,但您是否考虑过将整个代码库加载到Eclipse中,然后使用Eclipse的搜索功能来完成它? – slugonamission
@slugonamission很好,因为我找不到任何有用的东西......;命名我应该在Eclipse中使用什么工具,我知道CDT是用于C和C++的Eclipse套件,但我不知道用于这种分析的是什么。 – algl
它不是真正用于数据流,但您的要求似乎是检查数据结构的使用位置。通过使用CDT + Eclipse,您至少可以以图形方式查找数据结构的使用位置(在某个搜索菜单中的某个位置),但不是完整的DFG。 – slugonamission