Инструментированный общий объект gcov, ссылающийся на скрытый символ __gcov_init

У меня есть основной исполняемый файл Linux, и этот исполняемый файл использует некоторые функции из динамического общего объекта. Когда я инструментирую общий объект, а также пытаюсь настроить и скомпилировать основной исполняемый файл, это дает мне ошибку, как показано ниже.

скрытый символ: __gcov_init в /usr/lib/gcc/x86_64-linux-gnu/4.8/libgcov/libgcov.a(_gcov.o) ссылается DSO.

Мой вопрос,

[1] Это происходит именно из-за того, что общая библиотека ссылается на основной исполняемый файл? или статический объект libgcov.a?

[2] Как решить эту проблему? В Windows нет возможности, чтобы общий объект ссылался на основной исполняемый файл, но в Linux это происходит.


person sandun dhammika    schedule 22.07.2015    source источник


Ответы (1)


Общие библиотеки, о которых я говорил, не инструментированы и не связаны с «lgcov». Нам нужны все эти библиотеки, связанные с этим [если существует один объектный файл, который скомпилирован для инструментальной сборки] и инструментированный.

Это решило мою проблему, и я смог настроить свою кодовую базу.

person sandun dhammika    schedule 03.08.2015