Macos

Outils

Nm, Otools avec l’option -tv affiche code assembleur

Utile https://developer.apple.com/forums/thread/715385 🌍⤴ : An Apple Library Primer

Adress Sanitizer

L’equivalent de Valgrind sur MacOS est « adress sanitizer », ou ASAN. On l’active dans XCode en modifiant les propriétés du schéma actif. Le me nu est accessible via

Product » Scheme » Edit Scheme

Dans l’onglet « Diagnostics » vous devriez trouver les options qui activent Asan pour le schéma en cours.

Activer Asan désactive certaines autres options de build comme l’analyse de la mémoire, n’oubliez pas de le désactiver si plus nécessaire.

Plus d’informations ici https://developer.apple.com/documentation/xcode/diagnosing-memory-thread-and-crash-issues-early 🌍⤴

Analyze code

L’option « analyze code » permet de trouver des sources de comportement indéfini en sus de address sanitizer. Les cheins d’execution seront affichés d’une façon graphique.

Lister les symboles exportés dans une .dylib

nm -gU /chemin/vers/lib.dylib