Я хочу получить информацию о покрытии кода. во время работы только одна функция.
например, я просто хочу знать, через какие строки была выполнена run ().
test.cpp:
#include "..."
int main(){
init();
gcov_start_recording();
run();
gcov_end_recording();
return 0;
}
Невозможно получить информацию об исходном коде из обычного двоичного файла. Моя основная идея: 1. Исполняемый файл должен соответствовать отладочной версии, которые хранят информацию о символе. 2. Вам нужен внешний скрипт-обертка для GDB. установить точку останова на входе и выходе из функции. собрать вывод трассировки из GDB. отфильтруйте дублирующую строку в выводе. наконец, вы получите информацию об обложке кода.
Других решений пока нет …