Как я могу найти функцию в общих объектных файлах, используя функции objdump и bash в linux? - PullRequest
15 голосов
/ 20 февраля 2012

У меня есть папка в linux, которая содержит несколько общих объектных файлов (* .so). Как я могу найти функцию в общих объектных файлах, используя функции objdump и bash в linux?

Например, в следующем примере для меня найдена функция func1 в mylib.so:

objdump -d mylib.so | grep func1

Но я хочу найти func1 в папке, которая содержит общие объектные файлы. Я не знаю языка bash и как комбинировать команды терминала linux.

Ответы [ 2 ]

27 голосов
/ 20 февраля 2012

nm проще, чем objdump, для этой задачи.
nm -A *.so | grep func должно работать.Флаг -A указывает nm напечатать имя файла.

2 голосов
/ 20 февраля 2012

Вы также можете использовать,

find <path> -name "*.so" -exec nm {} \; | grep func1
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...