calltree的安装与使用
来源:互联网 发布:unity3d程序员 编辑:程序博客网 时间:2024/06/05 03:08
calltree是一个用于帮助阅读源代码的工具,其可以生成函数之间的关系调用图。
安装:
下载地址:http://download.chinaunix.net/download.php?id=2245&ResourceID=1172
解压后直接make即可,在make过程中会遇到错误,解决的命令
1、cp RULES/i686-linux-cc.rul RULES/x86_64-linux-cc.rul
2、
find . -name
"*.[c|h]"
|xargs sed -i -e
"s/fexecve/fexecve_calltree/"
find . -name
"*.[c|h]"
|xargs sed -i -e
"s/getline/getline_calltree/"
find . -name "*.[c|h]" -exec grep getline -nH {} \;
3、
安装好后,软链接到/usr/bin目录下 ln -s /home/XXX/calltree/OBJ/x86_64-linux-cc/calltree /usr/bin/calltree
apt-get install graphviz先安装
使用:
-g输出函数所在文件的目录
-m参数只用于分析main函数中的函数调用关系。
-p参数是默认的。它表示要使用C语言预处理程序分析代码。缺点是它会产生很多我们不关心的消息。
-np和-p是相反的。它表示不要使用C语言预处理程序分析代码。如果指定它,可能会导致分析过程出错。因为像开源项目,有几个不需要预处理处理下呢?
-xvcg参数表示导出一个可以使用VCG软件处理的格式的文件。
-dot参数表示导出一个dot格式文件,可以供graphviz处理的。
list可以让我们指定仅仅需要分析的函数里的函数调用。
还有一个重要的选项是listfunction ,缩写是lf,用来只打印某个函数中的调用,用法是: lf=your_function
使用一:
#calltree -np -b list=start_kernel depth=3 `find ./init/ ./kernel/ -name "*.c"` > maps
#vi maps
使用二:
calltree -np -b -dot list=start_kernel ./init/*.c > ~/start_kernel.dot
dot -T png start_kernel.dot -o ./testhaha.png
使用三:
calltree -dot list=
"ev_run"
*.c > ev_run.dot
dot -Tgif ev_run.dot -o ev_run.gif
https://www.2cto.com/kf/201707/660151.html
http://www.cnblogs.com/mylinux/p/6145625.html
- calltree的安装与使用
- calltree的安装
- 关于calltree在ubuntu14.04上的安装问题
- 函数调用树生成工具calltree-2.3 使用小记。
- calltree 在ubuntu(12.04)上的编译 ___附 已编译+源码包
- 静态分析C语言生成函数调用关系的利器——calltree
- OS2的安装与使用
- ECB的安装与使用
- James的安装与使用
- James的安装与使用
- VNC的安装与使用
- Jboss的安装与使用- -
- apt的安装与使用
- HibernateSynchronizer的安装与使用 -
- VirtualBox 的安装与使用
- WebLogic的安装与使用
- AjaxControlToolkit的安装与使用
- AjaxControlToolkit的安装与使用
- SecureCRT使用SSH连接linux超时后自动断开
- (error) MISCONF Redis is configured to save RDB snapshots, but is currently not able to persist on d
- C++中void和void*指针的含义
- Android 7.1 以上机型Charles抓包解决办法
- OpenStack公共组件oslo之四——oslo.context
- calltree的安装与使用
- Mac 搭建基于Github的hexo博客
- TCP和UDP的区别
- 知识过载与疲于奔命
- js关键字,保留字,标识符总结
- last_insert_id使用及其问题解决方案
- 丛林战争项目二之实现服务器端异步的消息接收
- zabbix监控之二---zabbix导入模板,配置监控项、触发器及报警媒介
- HDU-2016(数据的交换输出)