Как получить точное местоположение из команды "info symbol" GDB - PullRequest
0 голосов
/ 01 ноября 2019

Я отлаживаю с GDB на работе. Когда я ввожу «информационный символ 0xABCD», я получаю следующий результат:

sample_function + 123 in section init

Я знаю, что точное расположение близко к sample_function (), и имеет смещение 123, но как мне найти его в C? код? Я не нашел ни одного ресурса в интернете, который бы говорил об этом. Спасибо за любую помощь.

1 Ответ

1 голос
/ 01 ноября 2019

как мне найти его в коде C?

Вы можете сделать:

(gdb) disas/m 0xABCD

Из "help disas":

With a /m modifier, source lines are included (if available).

В качестве альтернативы эта команда: addr2line -fe /path/to/binary 0xABCD (запускается за пределами GDB) должна печатать местоположение источника (если двоичный файл имеет информацию о строке отладки).

...