GCOV 用法
来源:互联网 发布:游戏编程 培训机构 编辑:程序博客网 时间:2024/06/05 01:50
CFLAGS="-fprofile-arcs -ftest-coverage"
LIBS="-lgcov"
1。GCOV
(1) 编译 CFLAGS CXXFLAGS LDFLAGS += "-fprofile-arcs -ftest-coverage -g -O0 -fPIC"
gcc -fprofile-arcs -ftest-coverage -g -O0 -o test test.c
生成.gcno文件(gcov note文件)
备注:gcc -c 不会生成.gcda(交叉编译工具)
(2)运行程序
(2.1)环境准备
默认会在test的编译路径生成.gcda(/work/build),如果不存在则生成.gcda失败
通过设置GCOV_PREFIX=/tmp,则在/tmp/work/build生成.gcda
通过设置GCOV_PREFIX_STRIP(默认0),消除路径,GCOV_PREFIX_STRIP=1,则在/build生成.gcda,默认是(/work/build)
./test
生成test.gcda文件(gcov data文件)
(3) GCOV生成报告
gcov test.c
2 .LCOV
(1) 编译 CFLAGS CXXFLAGS LDFLAGS += "-fprofile-arcs -ftest-coverage -g -O0 -fPIC"
gcc -fprofile-arcs -ftest-coverage -g -O0 -o test test.c
生成.gcno文件(gcov note文件)
1)lcov --zerocounters --directory . (.指向源码目录)
2)./test
3)lcov --capture --directory . --output-file trace_args.info --test-name test --no-external
4)genhtml trace_args.info --output-directory output --title "Basic example" --show-details --legend
常用封装
export PERF_REPORT="perf report"
export PERF_RECORD_fgr0c1000="perf record -f -g -r 0 -c 1000"
export PERF_RECORD_dfgr0c1000="perf record -f -g -d -r 0 -c 1000"
export PERF_ANNOTATE_lvP="perf annotate -l -v -P"
LIBS="-lgcov"
1。GCOV
(1) 编译 CFLAGS CXXFLAGS LDFLAGS += "-fprofile-arcs -ftest-coverage -g -O0 -fPIC"
gcc -fprofile-arcs -ftest-coverage -g -O0 -o test test.c
生成.gcno文件(gcov note文件)
备注:gcc -c 不会生成.gcda(交叉编译工具)
(2)运行程序
(2.1)环境准备
默认会在test的编译路径生成.gcda(/work/build),如果不存在则生成.gcda失败
通过设置GCOV_PREFIX=/tmp,则在/tmp/work/build生成.gcda
通过设置GCOV_PREFIX_STRIP(默认0),消除路径,GCOV_PREFIX_STRIP=1,则在/build生成.gcda,默认是(/work/build)
./test
生成test.gcda文件(gcov data文件)
(3) GCOV生成报告
gcov test.c
2 .LCOV
(1) 编译 CFLAGS CXXFLAGS LDFLAGS += "-fprofile-arcs -ftest-coverage -g -O0 -fPIC"
gcc -fprofile-arcs -ftest-coverage -g -O0 -o test test.c
生成.gcno文件(gcov note文件)
1)lcov --zerocounters --directory . (.指向源码目录)
2)./test
3)lcov --capture --directory . --output-file trace_args.info --test-name test --no-external
4)genhtml trace_args.info --output-directory output --title "Basic example" --show-details --legend
常用封装
export PERF_REPORT="perf report"
export PERF_RECORD_fgr0c1000="perf record -f -g -r 0 -c 1000"
export PERF_RECORD_dfgr0c1000="perf record -f -g -d -r 0 -c 1000"
export PERF_ANNOTATE_lvP="perf annotate -l -v -P"
0
上一篇:GCC编译优化指南
下一篇:CPU如何操作内存?
相关热门文章
- socket中的短连接与长连接,心...
- Haproxy、Keepalived双主高可...
- Tomcat的性能与最大并发(1000)...
- Nginx深入详解之日志
- socket编程的同步、异步与阻塞...
- linux dhcp peizhi roc
- 关于Unix文件的软链接
- 求教这个命令什么意思,我是新...
- sed -e "/grep/d" 是什么意思...
- 谁能够帮我解决LINUX 2.6 10...
给主人留下些什么吧!~~
评论热议
0 0
- gcov用法
- gcov 用法
- gcov 用法
- GCOV 用法
- gcov
- 【转载】gcov 用法 --用于统计代码覆盖率
- linux下代码覆盖率检查工具---gcov的用法
- linux下代码覆盖率检查工具---gcov的用法
- GCOV使用
- GCOV使用
- gcov and gprof
- GCOV 使用用例
- gcov覆盖率测试
- gcov的使用 收藏
- CUNIT与gcov
- gcov 使用笔记
- Gcov单元测试覆盖率
- gcov lcov (一)
- VIM 小记 内含多个内容
- Redis 常用命令以及使用事务、设置key超时
- Spring-MVC第二弹数据库链接
- java数组排序方法笔记
- GCC编译优化指南
- GCOV 用法
- 100 个 Linux 常用命令大全(下)
- CPU如何操作内存?
- C#_ImageList和ListView的使用
- CFI support for GNU assembler (GAS)
- 安装使用oprofile
- 第二本书的第一章 示例一
- Linux中select、poll和epoll的区别
- Handling oprofile sample buffer overflows
原创粉丝点击
热门IT博客
热门问题
老师的惩罚
人脸识别
我在镇武司摸鱼那些年
重生之率土为王
我在大康的咸鱼生活
盘龙之生命进化
天生仙种
凡人之先天五行
春回大明朝
姑娘不必设防,我是瞎子
消毒
碘伏消毒液
八四消毒液
巴氏消毒法
甘露消毒丹
酒精消毒
普济消毒饮
洗衣机消毒
消毒剂
紫外线消毒灯消毒时间
外科手消毒
鱼缸消毒
伤口消毒
碘伏消毒
消毒产品
消毒的概念
消毒的定义
消毒定义
消毒方法
常规消毒
消毒中心
什么是消毒
紫外线消毒灯
消毒液怎么用
消毒液对人体有害吗
伤口消毒用双氧水还是碘伏好
八四消毒液对人有害吗
84消毒液衣服
84消毒液可以洗衣物吗
洗衣粉84消毒液灭蟑螂
洁厕灵和84消毒液
威露士消毒液
84消毒液通马桶妙招
84消毒液和洁厕灵反应
戊二醛消毒液
二氧化氯消毒剂
滴露消毒液正确使用方法
84消毒液几个小时会消失
洁厕灵和84消毒液反应
消毒液洗衣服
八四消毒液怎么洗衣服