本文由 简悦 SimpRead 转码, 原文地址 www.cnblogs.com
之前的工作环境习惯了使用 source insight 查看函数分析代码,切换到 mac 下后改用 vscode,发现缺少函数调用关系图生成。跨平台的 understand 可以很好的解决,但是公司没有购买,因此需要寻找一个免费、跨平台的替代工具。doxygen + graphviz 是不错的选择。
原文参考:https://blog.csdn.net/benkaoya/article/details/79763668
doxygen 是跨平台的工具,官网:http://www.doxygen.nl/
支持 Linux、Windows、Mac OS X 系统(本文将以 Windows 版本为例)。
支持 C 语言在内的多种语言的分析,生成的帮助文档格式可以是 CHM、RTF、PostScript、PDF、HTML 和 Unixman page 等。
我使用 doxygen 的主要目的是生成函数调用关系图,但它能做的远不止于此,它是一款优秀的文档自动生成工具。它可以将代码中的注释转换成帮助文档(注释格式要符合 doxygen 要求才行,FFmpeg API Documentation 就是用 doxygen 自动生成的),它也可以通过静态分析代码,生成「头文件引用关系图」、「函数调用关系图」、「继承图」以及「协作图」来可视化文档之间的关系。
有了这样的工具,在发布程序版本的同时,发布帮助文档也将变得简单、高效,配合持续集成系统(如 Jenkins),自动构建系统,帮助文档可以跟随代码一起实时、轻松的发布版本。
本文主要介绍如何使用 doxygen 生成函数调用关系图,其他功能(如将代码的注释生成帮助文档)不在本文讨论范围内,这是一个入门级的教程。
doxygen 自身没办法生成关系图,需要依赖 graphviz 才行,得先安装 graphviz。根据自身系统选择安装的版本。
2.2 安装 doxygen
根据自身系统选择安装的版本。
安装目录下有几个我们需要关心的:
1)运行 doxywizard.exe,配置 Wizard > Project 页面
点击 Wizard 选项卡,如下图所示:

2)选择程序语言
根据实际情况选择,我这里选择 C

3)配置 Expert > Project 页面

3)配置 Expert > Build 页面

4)配置 Expert > Dot 页面

至此,配置完毕,可以通过 File > Save 菜单将上面所有配置导出(保存)到配置文件,以免丢失配置,配置文件默认保存在 Step1 设置的工作目录下。
当然你也可以通过 File > Open 菜单导入(打开)一个现有的配置文件。可以打开配置文件看看,里面参数非常多,doxywizard 图形化的便捷性也就体现在这里。
5)分析源码
Run 选项卡,点击 Run doxygen 按钮,幕后就会根据刚才的配置执行 doxygen.exe 命令:

6)查看分析结果
等分析完毕,最后点击 Show HTML output 按钮就会启动浏览器显示分析结果,如下图所示:

7)查看 doxygen 分析后的结果
点开文件列表

头文件包含关系图与函数调用关系图如下,从图中可以发现,doxygen 不会显示调用的系统 API。


上一篇: IP 基础知识全家桶
下一篇: 卡片盒笔记法的操作步骤
本文暂时没有评论,来添加一个吧(●'◡'●)
取消回复欢迎 你 发表评论: