如何让doxygen产生呼叫& c函数的调用图

时间:2012-01-16 23:34:40

标签: c doxygen

我花了一些时间来审阅文档并从头到尾浏览我的doxy配置文件。我在配置文件中剪切了doxygen,它为结构和cpp类生成文档和索引,但是我没有在源代码树中看到大量c函数的调用或调用图。

有人能告诉我如何配置doxygen来生成这些呼叫和呼叫者树吗?我确实安装了graphviz。

5 个答案:

答案 0 :(得分:48)

您必须将HAVE_DOTCALL_GRAPHCALLER_GRAPH设置为YES。 另外,请确保dot变量的路径为PATH

如果仍然无效,您可能需要设置EXTRACT_ALL和/或EXTRACT_STATIC,具体取决于您的功能。

答案 1 :(得分:5)

doxywizard也很有用。它为您提供GUI中的所有选项。选择任何选项都会显示有关该选项的快速帮助

您可能也对COLLABORATION_GRAPH或GRAPHICAL_HIERARCHY感兴趣。

很方便。

答案 2 :(得分:4)

通过GUI中的“专家”选项卡控件设置路径“点”(/ usr / local / bin /)就行了!

答案 3 :(得分:1)

我的C全局函数遇到了同样的问题。启用CLANG_ASSISTED_PARSING确实有助于显示某些函数的调用图,但不是全部函数。

答案 4 :(得分:0)

对于 MacOS 用户:

将 Doxygen 和 Graphviz 安装为:

brew install doxygen
brew install graphviz

转到您的项目文件夹,然后从终端设置到此路径运行

doxygen -g

将生成一个名为 Doxyfile 的 doxygen 文件。继续并在任何编辑器中打开此文件,找到这些参数并将其值替换为 YES:

HAVE_DOT               = YES
EXTRACT_ALL            = YES
EXTRACT_PRIVATE        = YES
EXTRACT_STATIC         = YES
CALL_GRAPH             = YES
CALLER_GRAPH           = YES
DISABLE_INDEX          = YES 
GENERATE_TREEVIEW      = YES
RECURSIVE              = YES

您还可以在此 Doxyfile 中设置项目名称。保存文件,然后在终端中运行此命令:

doxygen Doxyfile

这将生成另外两个名为 htmllatex 的文件夹。转到 html 文件夹并打开 annotated.html 以查看项目的所有详细信息。您还将查看嵌入在 html 中的相关调用图的 png 图像(例如与某些函数/类相关)。