Doxygen - 如何在不生成图形的情况下生成文本调用关系结果

Doxygen - How to generate a textual call relationship result without generating the graph

本文关键字:文本 情况下 调用 关系 结果 图形 Doxygen      更新时间:2023-10-16

我正在使用Doxygen来获取c/c ++项目的整个函数调用图。我设置HAVE_DOT = YESCALL_GRAPH = YES.它可以帮助获得正确的结果,但对于一个大项目,使用点生成 PNG 将花费大量时间。我想获得没有 PNG 的文本结果以避免耗时。但是我不知道如何配置。在不生成 PNG 的情况下获取.DOT文件将是完美的。

对于图形表示,doxygen具有CALL_GRAPHCALLER_GRAPHHAVE_DOT配置设置一起。

对于文本表示,有以下设置:REFERENCED_BY_RELATIONREFERENCES_RELATION,这些设置会导致每个函数的结果。

来自OP的评论:

但它只是帮助我知道函数中调用了哪些实体。我 无法获取项目的整个调用图。

我想要的是获取文本图中的函数调用图,例如.不生成 PNG 的 DOT。

这没有得到Doxygen的直接支持。有一个卑鄙的技巧来完成某事:

  • HAVE_DOT设置为YES
  • CALL_GRAPH设置为NO
  • 添加到您想要的函数中:callgraph
  • 卑鄙的伎俩:
    • DOT_CLEANUP设置为NO
    • DOT_PATH设置为dot可执行文件不驻留的路径
    • DOT_GRAPH_MAX_NODES设置为适当的值
    • MAX_DOT_GRAPH_DEPTH设置为适当的值

这将导致一个dot文件(例如在HTML目录中(与请求的关系。

您可以查看下面的手册: http://www.doxygen.nl/manual/diagrams.html

设置CALL_GRAPH = NO可能会起作用,因为它不会创建图形表示。

查看手册中hidecallgraphcallgraph的用法。

相关文章: