C/C++白盒测试工具之codeviz安装使用

下载安装

1.     下载:http://www.skynet.ie/~mel/projects/codeviz/#download

2.     安装:

1.     tar -xzvf codeviz-1.0.12.tar.gz&& cd codeviz-1.0.12; 

2.     ./configure 时报错,需要安装dot支持;

3.     sudo yum install graphviz graphviz-dev graphviz-doc安装graphviz支持;

4.     使用make命令编译codeviz,提示“gcc configure: error: Building GCC requires GMP 4.2+, MPFR 2.3.1+ and MPC0.8.0+”(这个错误与本地的依赖环境有关,有的会出现这个问题,有的不会出现);

5.     cd compilers/gcc-graph/gcc-4.6.2/contrib&& ./download_prerequisites 下载需要的依赖库;

6.     逐个对三个依赖库进行编译安装,注意安装顺序

1.     安装gmp: ./configure --prefix=/usr/local/gmp-4.3.2; sudo make install

2.     安装mpfr: ./configure --prefix=/usr/local/mpfr-2.4.2--with-gmp=/usr/local/gmp-4.3.2/; sudo make install

3.     安装mpc: ./configure --prefix=/usr/local/mpc-0.8.1--with-gmp=/usr/local/gmp-4.3.2/ --with-mpfr=/usr/local/mpfr-2.4.2/;sudo makeinstall

7.     修改install_gcc-4.6.2.sh脚本文件,加入编译选项--with-gmp=/usr/local/gmp-4.3.2/ --with-mpfr=/usr/local/mpfr-2.4.2/ --with-mpc=/usr/local/mpc-0.8.1,保存退出。

8.     继续执行make命令,又提示ppl没有安装,继续“sudo yum install  cloog-ppl-*”,进行编译,继续ok.

9.     继续报错“conftest.c:16: error: 'choke' undeclared (first use in this function)”,需要在install_gcc-4.6.2.sh文件中,加入编译选项“--with-libelf-include=/usr/include”选项,然后继续make,继续ok。

10.   直到编译完毕,sudo make install,完成其安装。(一个比较不完备的开发环境,进行GCC的编译,还是费了些周折的。)

基本使用

1.   使用编译好的Gcc编译器,对项目文件进行编译,此步骤完成后,编译器在编译源码的同时,会根据扫描代码过程,为每个源码文件生成一个后缀为.cdepn的文件。该文件中对该文件中使用了哪些函数,该函数调用了哪些函数,有一个统计结果。

2.   使用genfull生成full.graph文件。genfull是一个用perl写的脚本文件,该文件负责搜索整个源码树,并且发现所有的cdepn文件,然后生成一个适合dot和gengraph使用的文件。

3.   使用gengraph生成函数调用关系图表。gengraph同样是一个perl脚本文件,该文件负责从full.graph文件中生成函数调用关系图。

1.   常用选项如下:

-f 指定生成关系图的最顶层的函数

-t 忽略Linux kernel的函数集

-i 指定要忽略的函数

-d 指定调用最大深度(不包含-f指定的函数)

-l 显示函数声明的位置

-a 显示所有声明和调用的位置

-r 函数调用关系图倒置

--output-type 指定输出的调用图的类型,支持png,ps,html PNG和gif格式,默认生成ps格式

--output-layout 调用关系图的方向,只是LR|RL|BT|TB,默认为TB

2.   另外,还支持HTML选项、正则选项Daemon守护进程选项及Post-Processing选项


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值