Я пытаюсь получить покрытие кода в моем проекте на базе CMake (который состоит из нескольких целей).
Сначала я генерирую gcno файлы с помощью:
lcov -b . -d . -o coverage.output --capture --initial
*.gcno генерируются в
build_dir/[target_dir]/CMakeFiles/[target_dir].dir
Затем я запускаю свои тесты, которые генерируют *. gcna файлы в
build_dir/tests/CMakeFiles/[target_dir].dir
Когда я теперь снова запускаю lcov:
lcov -b . -d . -o coverage.output --capture
Я получаю следующую ошибку:
Scanning . for .gcda files ...
Found 23 data files in .
Processing Base.dir/DateTools.cpp.gcda
geninfo: ERROR: build_gcov/tests/CMakeFiles/Base.dir/DateTools.cpp.gcno: could not open file
Когда я вручную перемещаю *.gcno файл в каталог, где генерируется *.gcda, это, кажется, работает.
Спасибо за помощь!!!