我正在尝试确定我的测试覆盖率。为此,我使用较新版本的 gcc 编译我的程序:
\n\nCC=/usr/local/gcc8/bin/gcc FC=/usr/local/gcc8/bin/gfortran ./configure.sh -external cmake -d\nRun Code Online (Sandbox Code Playgroud)\n\n使用选项编译后,--coverage我运行测试并创建*.gcda,*.gcno和*.o.provides.build文件。如果我运行类似的东西:
> $ /usr/local/gcc8/bin/gcov slab_dim.f90.gcda [\xc2\xb1develop \xe2\x97\x8f]\nFile \'/Local/tmp/fleur/cdn/slab_dim.f90\'\nLines executed:0.00% of 17\nCreating \'slab_dim.f90.gcov\'\nRun Code Online (Sandbox Code Playgroud)\n\n这表明 gcov 运行良好。但是,如果我尝试对这些结果运行 lcov:
\n\nlcov -t "result" -o ex_test.info -c -d CMakeFiles/\nRun Code Online (Sandbox Code Playgroud)\n\n对于每个文件,我都会收到类似以下的错误消息:
\n\nProcessing fleur.dir/hybrid/gen_wavf.F90.gcda\n/Local/tmp/fleur/build.debug/CMakeFiles/fleur.dir/hybrid/gen_wavf.F90.gcno:version \'A82*\', prefer \'408R\'\n/Local/tmp/fleur/build.debug/CMakeFiles/fleur.dir/hybrid/gen_wavf.F90.gcno:no functions found\ngeninfo: WARNING: gcov did not create any files for /Local/tmp/fleur/build.debug/CMakeFiles/fleur.dir/hybrid/gen_wavf.F90.gcda!\nRun Code Online (Sandbox Code Playgroud)\n\n这与我使用系统标准时收到的错误消息相同/usr/bin/gcov
这让我相信 lcov 调用旧的 gcov 而不是新的。如何强制 gcov 使用新版本?
\n| 归档时间: |
|
| 查看次数: |
5257 次 |
| 最近记录: |