zoukankan      html  css  js  c++  java
  • (转)gcov、lcov与genhtml 使用心得

    gcc是linux平台下的C、C++ 编译器

    gcov是配合gcc产生覆盖信息报告的工具;

    lcov是将gcov产生的报告信息,以更直观的方式显示出来工具

    基本的使用方法分为4个阶段:

    (一)、gcc编译:产生插装后的目标文件test、gcov结点文件 test.gcno

       #gcc -fprofile-arcs -ftest-coverage -o test test.c

       # ls

       test   test.c   test.gcno

       说明:参数 fprofile-arcs 和 ftest-coverage 告诉gcc编译器:(1)在目标文件test 插装跟踪代码;(2)生成供gcov使用 test.gcno [gcov node 文件]。

             因此,这里的生成的目标文件比正常编译的文件大。

     

    (二)、运行目标文件:收集运行覆盖信息 test.gcda

        # ./test

          Success  -- 这里是运行结果。

        # ls

          test test.c test.gcno test.gcda

       这里test.gcda运行结果,

     

    (三)、gcov产生报告信息: test.c.gcov

        #gcov  test.c

          File 'test.c'

          Lines executed: 87.50% of 8

          test.c: creating 'test.c.gcov'

       #ls

          test test.c test.c.gcov test.gcda test.gcno

    (四)、lcov:格式化test.c.gcov ,输出到 test.info文件

        #lcov -d . -t 'test' -o 'test.info' -b . -c

        说明:

             -d  . :参数 d指路径, "." 指当前路径

             -t  "name" :指目标文件,这里 是 test

             -o  "filename" :输出格式化后的信息文件名

    (五)、genhtml:根据信息文件(.info)产生html 文档,输出到一个文件夹中

       #genhtml -o result test.info

        说明: -o  directory :参数o (output)后面跟路径名称,在当前目录下创建指定目录,本例中是result

       

    至此: 可以在result目录中打开index.html 浏览覆盖信息

  • 相关阅读:
    最新自然语言处理(NLP)四步流程:Embed->Encode->Attend->Predict
    Word Embedding
    知乎:GAN 的发展对于研究通用人工智能有什么意义?
    2016年总结:教师路的开启,爱情味的初尝 (下)
    WinForm 窗口缩放动画效果
    关于DrawIndexedPrimitive函数的调用
    spring mvc--默认都使用了哪些bean
    杭电 HDU 1031 Design T-Shirt
    Android选择/拍照 剪裁 base64/16进制/byte上传图片+PHP接收图片
    hdoj5645DZY Loves Balls
  • 原文地址:https://www.cnblogs.com/heluan/p/9935206.html
Copyright © 2011-2022 走看看