J'ai donc essayé de faire fonctionner des bibliothèques dynamiques dans mon projet XCode sous Mac OS X. Jusqu'à présent, aucune joie.
Je suis capable de charger le fichier dylib, mais quand j'appelle dlsym pour obtenir le pointeur de fonction, il renvoie 0 et dlerror indique que le symbole est introuvable.
Je me demande donc s'il existe un moyen simple de lister les symboles exportés à partir d'un fichier dylib. Toutes les idées seraient géniales.
nm -gu
, c'est à dire que l'-u
option est en minuscules.man 1 nm
liste de nombreuses choses que l'on peut faire avec nm. Encore une fois, c'est une ressource externe que l'on peut lire pour découvrir une solution, mais pas une solution elle-même au «moyen simple de lister les symboles exportés depuis un fichier dylib» . «nm -gU ….dylib
» Est, cependant.Utilisez otool :
OU
la source
otool: -T functionality obsolete
use objdump -totool -T
rapportsfunctionality obsolete
dans le plus récent OS X, il est également vrai que (pour les bibliothèques dynamiques)objdump -t
rapporteraThe file was not recognized as a valid object file.
Utilisation
nm -a your.dylib
Il imprimera tous les symboles, y compris les globaux
la source
Utilisez Mach-OView pour afficher tous les symboles dans dylib
https://sourceforge.net/projects/machoview/
la source