【开发工具】用cinclude2dot.pl及graphviz分析头文件包含结构
系统结构的设计很多是可以体现在头文件的结构上的。系统设计的简单明了,文件包含层次明显且有序,反之,可能乱七八糟,群魔乱舞。
下面介绍下用cinclude2dot.pl及graphviz来绘制头文件包含结构图。
cinclude2dot.pl,看名字可知,是perl脚本,将C语言头文件的包含关系转换为DOT文件。
DOT是一种文本图形描述语言。它提供了一种简单的描述图形的方法,并且可以为人类和计算机程序所理解。具体介绍见如下网址:
官网:http://www.graphviz.org/content/dot-language
或 维基百科:http://zh.wikipedia.org/zh-cn/DOT%E8%AF%AD%E8%A8%80
1、下载cinclude2dot.pl,可去官网下载:
http://www.flourish.org/cinclude2dot/
2、由于cinclude2dot.pl是perl脚本,所以首先要安装perl解析器。可去如下地址下载:
http://www.activestate.com/activeperl/downloads
或http://download.csdn.net/detail/ceofit/4477179
3、DOT语言绘图需要使用Graphviz工具包,Graphviz是AT&T的开源的绘图工具,使用图形显示系统或网络的结构信息。
见如下网址:
http://www.graphviz.org/Home.php
4、下载安装perl及Graphviz后即可进行分析。
我找linux0.01版本内核为例子。将cinclude2dot.pl拷到源代码根目录最方便不需要什么参数,默认目录为当前目录,一般情况下需要设置一下路径:
在当前目录建gen.bat内容如下:
层次明显,结构比较清晰。
官网提供的CVS的结构图如下:
提供下载:
http://download.csdn.net/detail/ceofit/4477179
包括cinclude2dot.pl,提取的dot.exe,提取的perl.exe,注意,dot.exe,perl.exe由于我本机是安装的官方安装包,没有测试提取的能否正常运行。亲测cinclude2dot.pl没问题,dot与perl如果不能运行,请下载安装包安装。