【发布时间】:2016-10-24 23:38:09
【问题描述】:
我有一个 CMakeLists.txt 文件,我在其中添加了:
set(CMAKE_CXX_FLAGS "-fprofile-arcs -ftest-coverage -pthread -std=c++11 -O0 ${CMAKE_CXX_FLAGS}")
它正在生成报告文件:
project_root/build/CMakeFiles/project.dir/
但它生成的文件有扩展名.cpp.gcno、.cpp.gcda 和.cpp.o。
另外,它们与 src 文件不在同一个文件夹中,它们位于:
project_root/src/
当我将报告文件移动到 src/ 文件夹并执行时
$ gcov main.cpp
main.gcno:cannot open notes file
但是我收到了那个错误信息。所以我将.cpp.gcno、.cpp.cdna 和cpp.o 更改为.gcno、.gcda 和.o,最后我得到以下信息:
gcov main.cpp
Lines executed:86.67% of 15
Creating 'main.cpp.gcov'
我有超过 50 个文件,无法为每个文件手动执行此操作。
我需要能够为所有文件运行一次 gcov 并为所有文件生成报告。我不在乎文件是在哪里生成的。
【问题讨论】: