Итак, я пытался заставить динамические библиотеки работать в моем проекте XCode под Mac OS X. Пока без радости.
Я могу загрузить файл dylib, но когда я вызываю dlsym для получения указателя функции, он возвращает 0, а dlerror сообщает, что символ не найден.
Поэтому мне интересно, есть ли простой способ перечислить символы, экспортируемые из файла dylib. Любые идеи были бы отличными.
nm -gu
, то есть-u
опция в нижнем регистре.man 1 nm
перечисляет множество вещей, которые можно делать с помощью nm. Опять же, это внешний ресурс, который можно прочитать, чтобы найти решение, но не само решение запрошенного «простого способа перечислить символы, которые экспортируются из файла dylib» . «nm -gU ….dylib
», Однако.Используйте otool :
ИЛИ
источник
otool: -T functionality obsolete
использование objdump -totool -T
отчетыfunctionality obsolete
в более новой OS X, верно и то, что (для динамических библиотек)objdump -t
будут сообщатьThe file was not recognized as a valid object file.
использование
nm -a your.dylib
Он напечатает все символы, включая глобальные
источник
Используйте Mach-OView для просмотра всех символов в dylib
https://sourceforge.net/projects/machoview/
источник