【开发工具】用cinclude2dot.pl及graphviz分析头文件包含结构
2012-08-05 01:50
477 查看
系统结构的设计很多是可以体现在头文件的结构上的。系统设计的简单明了,文件包含层次明显且有序,反之,可能乱七八糟,群魔乱舞。
下面介绍下用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内容如下:
这几条命令:
perl cinclude2dot.pl --include 头文件目录,以分号区分 --src 源文件目录,默认本目录 >>error.txt >linux.dot
error.txt为中间错误信息,linux.dot为最终生成的dot文件。
图像如下:
层次明显,结构比较清晰。
官网提供的CVS的结构图如下:
提供下载:
http://download.csdn.net/detail/ceofit/4477179
包括cinclude2dot.pl,提取的dot.exe,提取的perl.exe,注意,dot.exe,perl.exe由于我本机是安装的官方安装包,没有测试提取的能否正常运行。亲测cinclude2dot.pl没问题,dot与perl如果不能运行,请下载安装包安装。
下面介绍下用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内容如下:
perl cinclude2dot.pl --include ./linux,./linux/boot,./linux/fs,./linux/include,./linux/include/asm,./linux/include/linux,./linux/include/sys,./linux/init,./linux/kernel,./linux/lib,./linux/mm,./linux/tools >>error.txt > linux.dot dot.exe -Tpng linux.dot -olinux.png pause运行后在生成的linux.png为程序的结构图。
这几条命令:
perl cinclude2dot.pl --include 头文件目录,以分号区分 --src 源文件目录,默认本目录 >>error.txt >linux.dot
error.txt为中间错误信息,linux.dot为最终生成的dot文件。
dot.exe -Tpng linux.dot -olinux.png将dot文件转换成png图像,方便查看,也可生成pdf等文件格式。
图像如下:
层次明显,结构比较清晰。
官网提供的CVS的结构图如下:
提供下载:
http://download.csdn.net/detail/ceofit/4477179
包括cinclude2dot.pl,提取的dot.exe,提取的perl.exe,注意,dot.exe,perl.exe由于我本机是安装的官方安装包,没有测试提取的能否正常运行。亲测cinclude2dot.pl没问题,dot与perl如果不能运行,请下载安装包安装。
相关文章推荐
- bootstrap源码分析系列:一,文件结构和开发环境
- ECSHOP二次开发文档【文件结构和数据库表分析】
- ECSHOP二次开发文件结构文档和数据库表分析
- 好工具推荐--网页分析工具 httpwatch 网页开发不可或缺的辅助工具 提供httpwatch下载(包含破解)
- mkv文件结构的分析工具
- ionic3 自定义插件的开发和调用(包含jar包调用,文件结构详解)
- mp4文件结构分析工具
- cocos2d-x 3.x游戏开发学习笔记(2)--cocos2d-x 3.x文件目录结构分析
- ECSHOP二次开发文档【文件结构说明和数据库表分析】
- ECSHOP二次开发文档【文件结构和数据库表分析】
- 【IOS 开发】UIWebView 加载本地文件,多层的网页目录结构失败分析和解决,以及demo
- Android 开发尝试总结二:Android版HelloWorld项目文件结构分析
- Android Studio - HPROF文件查看和分析工具
- DXUT 主程序源文件结构分析
- 实例分析Java Class的文件结构
- DVWA系列之14 文件包含漏洞分析
- 求推荐go语言开发工具及go语言应该以哪种目录结构组织代码?
- MySQL小工具 之 InnoDB数据文件分析
- Android开发之使用Android studio结合辅助工具分析内存泄露
- 微软拟为阅读障碍者开发文件转换工具