Нет символов для массива Вальгринд dlclose () - PullRequest
0 голосов
/ 15 октября 2018

Массив не показывает имена функций для функций, которые есть в библиотеке, и эта библиотека закрывается с помощью dlclose ().

Если я удаляю dlclose (), запускаю программу перекомпиляции и запускаю программу, я вижу символы.Есть ли способ узнать имена функций без изменения исходного кода?

1 Ответ

0 голосов
/ 15 октября 2018

В новой версии valgrind (3.14) есть опция, которая предписывает valgrind сохранять символы библиотек dlclose'd:

--keep-debuginfo=no|yes   Keep symbols etc for unloaded code [no]
                          This allows saved stack traces (e.g. memory leaks)
                          to include file/line info for code that has been
                          dlclose'd (or similar)

Однако массив не использует эту информацию.

Вы можете получить пригодный для использования профиль отчета о куче, выполнив:

valgrind --keep-debuginfo = yes -: xtree-leak = yes

, а затемВизуализируйте память кучи, используя, например, kcachegrind.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...