在gcc项目中,编译参数加上-fprofile-arcs -ftest-coverage,连接参数加上-lgcov
编译以后除了产生.o文件以外,还生成*.gcno文件,
先执行编译的结果文件,会生成*.gcda文件(可以反复执行多次,都会累加到对应的gcda文件中)
执行gcov myfile.cpp(myfile.cpp是某个源码文件)
提示:
File‘src/ceftool.cpp’
已执行的行数:54.55% (共 22 行)
src/ceftool.cpp:正在创建‘ceftool.cpp.gcov’
File‘/usr/lib/gcc/i386-redhat-linux/4.1.2/../../../../include/c++/4.1.2/iostream’
已执行的行数:100.00% (共 1 行)
/usr/lib/gcc/i386-redhat-linux/4.1.2/../../../../include/c++/4.1.2/iostream:正在创建‘iostream.gcov’
File‘/home/liubin/abwork/repository/leadtone/pmapi_mig_v2.0/2.5-r2559/include/pmapi2.5/pmscl/PmComSmartPtr.h’
已执行的行数:0.00% (共 6 行)
/home/liubin/abwork/repository/leadtone/pmapi_mig_v2.0/2.5-r2559/include/pmapi2.5/pmscl/PmComSmartPtr.h:正在创建‘PmComSmartPtr.h.gcov’
在当前目录生成*.gcov文件,直接打开gcov文件可以查看结果,