2012-01-30 21 views
6

Próbuję uzyskać zasięg kodu na moim projekcie opartym na CMake (który składa się z kilku celów).CMake i lcov: nie znaleziono plików gcno

Najpierw wygenerować gcno pliki:

lcov -b . -d . -o coverage.output --capture --initial 

* .gcno są generowane w

build_dir/[target_dir]/CMakeFiles/[target_dir].dir 

Potem biegnę moich testów, które generują * .gcna pliki

build_dir/tests/CMakeFiles/[target_dir].dir 

Kiedy ja teraz ponownie uruchomić lcov:

lcov -b . -d . -o coverage.output --capture 

pojawia się następujący błąd:

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 

Kiedy ręcznie przenieść plik * .gcno do katalogu, w którym * .gcda jest generowany wydaje pracować.

Dzięki za pomoc!

Odpowiedz

5

Wymyśliłem, jak używać lcov z CMake i dołączane wszystko w cmake module.

+0

Dzięki, twoja droga jest łatwiejsza, dla gcovr. – tdihp

+4

Byłoby lepiej wyjaśnić, co spowodowało błąd. –