Программно перечислять символы в динамической библиотеке в Mac OS X - PullRequest
3 голосов
/ 08 июня 2011

Мне нужен способ перечисления символов и их адресов, экспортируемых из dylibs в Mac OS X.

Из оболочки я обычно использовал бы nm для этого - есть ли библиотека, которую я могу использовать из своего кода, чтобы получить то же самое, что обеспечивает nm? Аналогично API dbghelp в Windows.

В качестве последнего средства я полагаю, что мог бы создать nm и проанализировать вывод, но я бы хотел избежать этого, если есть более чистый метод.

1 Ответ

3 голосов
/ 08 июня 2011

нм (и otool) имеют встроенные знания, а не используют API. Лучшее, что вы получите - это заголовочные файлы, определяющие формат файла (см. «Man Mach-O»). Я бы вызвал nm и проанализировал вывод; нет ничего плохого в повторном использовании существующего компонента только потому, что интерфейс - это выполнение программы, а не вызов функции.

...