Я создаю библиотеку с несколькими *.c
файлами и у меня есть тестовый файл в подпапке test
. Инструменты сборки: CMake, CLang и ninja. Он работает на Windows 10 и Unbuntu 16.04. Я пытаюсь создать покрытие кода для просмотра.
В Unbuntu мой CMakeLists.txt содержит строку
set(CMAKE_CXX_FLAGS "-g -O0 -Wall -fprofile-arcs -ftest-coverage -fprofile-instr-generate -fcoverage-mapping -pthread")
Я не уверен, что эти опции делают.
компилятор генерирует test.cpp.o
и test.cpp.gcno
. Запуск тестовой программы генерирует test.cpp.gcda
.
Запуск llvm-cov
с этими файлами вызывает
llvm-cov show: for the -instr-profile option: must be specified at least once!
Я также видел ошибки, такие как
llvm-cov gcov: Not enough positional command line arguments specified!
Я вижу USAGE: llvm-cov gcov [options] SOURCEFILE
, но никогда не видел объяснения или примера того, что такое SOURCEFILE
.
Мне интересно посмотреть, какие строки кода используются хотя бы один раз. Чего мне не хватает?