关于#c++#的问题:而且lcov也不行,lcov版本为1.14,gcov是11.3,查了一些资料也不知道为啥会跟带c++的测试覆盖率(操作系统-linux)

为什么我的gcov会连带着有c++的东西?而且lcov也不行,lcov版本为1.14,gcov是11.3,我都是按照网上的步骤来的,查了一些资料也不知道为啥会跟带c++的测试覆盖率。

img


img

【相关推荐】



  • 这篇博客: C/C++代码覆盖率统计:gcov/lcov/gcovr以及集成到jenkins中的 2. lcov 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:

    Lcov是gcov的可视化前端,输出的是html格式的报告,类似下面这样:

    ubuntu下需要安装lcov,最简单的方式就是通过apt-get方式安装:

    sudo apt-get install lcov

    功能比较多,有很多选项可供选择,具体可通过lcov --help查阅,这里记录一下基本操作。

    lcov -d . -c -o all.info 
    # -d表示执行目录,-c表示捕获所有报告,-o表示输出到all.info中
    
    lcov -r all.info '/usr/*' 'thirdpart/*' -o coverage.info
    # -r表示排除哪些文件或路径(--remove),意思就是将初始生成的all.info做一下排除,得到coverage.info
    
    lcov -e all.info 'thirdpart/*' -o coverage.info
    # -e意思就跟上面相反,保留哪些文件(--extract),意思就是将all.info做一下筛选,得到coverage.info
    
    genhtml -o result coverage.info
    # 最后一步就是将得到的.info文件生成最终的html结果,结果放在result文件夹中。
    
    

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^