На одном сервере с G CC 4.4.7 / GCOV 4.4.7 я могу успешно запустить тесты. Однако на другом сервере с G CC 4.8.5 / GCOV 4.8.5, выполнение тестов приводит к этой ошибке:
profiling:/path/to/foo.gcda:Version mismatch - expected 700e got 408R
Вот выходные данные версий:
$ gcc --version
gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-36)
$ gcov --version
gcov (GCC) 4.8.5 20150623 (Red Hat 4.8.5-36)
После поиска этой ошибки кажется, что она часто вызывается несовпадающими версиями между g cc и gcov, однако у меня те же версии.
Мы недавно обновили g cc на этом сервере с 4.4.7 до 4.8.5. Эта проблема, по-видимому, вызвана обновлением.
Следует отметить, что я тестирую расширение Python C, которое, я думаю, немного отличается от тестирования обычного C приложения.
Я делаю следующее:
export CFLAGS="--coverage"
python setup.py build_ext --inplace
python tests.py
На обеих серверах эта вторая команда создает файлы .gcno
соответствующим образом.
На сервере с 4.4.7, третья Команда успешно создаст файлы .gcda. Но сервер с 4.8.5 выводит это сообщение об ошибке