Comment les Instruments obtient les informations de débogage:
Instruments obtient les informations de débogage à partir d'un .dSYM fichier qui est normalement généré automatiquement par XCode lors de la configuration des Informations de Débogage Format NAIN dSYM Fichier combiné avec une coche dans la Générer les Symboles de Débogage case d'option. La configuration de ces options permettra d'ajouter une étape supplémentaire à l'XCode processus de construction et de générer un dSYM fichier après l'application a été compilée. Chaque dSYM est construit avec un UUID qui correspond à un UUID dans un Mach-O dans le binaire qu'il est dérivé. Les Projecteurs de l'importateur indices de l'Uuid de chaque dSym fichier qui est dans un coup de Projecteur sur l'accessibilité de l'emplacement sur votre Mac. Par conséquent, SPOTLIGHT ne tous la magie noire et est responsable de faire le lien entre l' .l'application que vous exécutez et de ses correspondants .dSYM fichier.
Comment générer des informations de débogage et dSYM fichier sans XCode:
Assurez-vous que vous êtes compilig avec –gdwarf-2 et g drapeaux. (Autre drapeau combinaisons pourrait fonctionner)
-g
Produire des informations de débogage dans
le système d'exploitation natif du format
(stabs, COFF , XCOFF , ou le NAIN 2).
GDB peut travailler avec cette débogage
de l'information. Sur la plupart des systèmes qui utilisent
lames de format, -g permet une utilisation d'appoint
des informations de débogage seulement GDB
pouvez utiliser; cette information supplémentaire permet
débogage de mieux travailler dans GDB mais
probablement faire d'autres débogueurs de crash ou de
refuser de lire le programme. Si vous
souhaitez contrôler pour certains si
générer de l'information supplémentaire, utilisez
-gstabs+, -gstabs, -gxcoff+, -gxcoff, ou -les ptc (voir ci-dessous). GCC permet
vous utiliser -g avec -O. Les raccourcis
prises par un code optimisé peut
à l'occasion de produire surprenant
résultats: certaines variables déclarées
peut ne pas exister du tout; flux de contrôle
peut brièvement se déplacer où vous n'avez pas
attendez; certains états peuvent ne pas être
exécuté, car ils calculent
des résultats constants ou de leurs valeurs ont été
déjà à portée de main; certains états peuvent
exécuter en différents endroits, car
ils ont été déplacés hors de la boucle.
Néanmoins, il s'avère possible d'
débogage de sortie optimisé. De ce fait, il
raisonnable d'utiliser l'optimiseur pour
les programmes qui peuvent avoir des bugs.
-gdwarf-2
Produire des informations de débogage dans le NAIN version 2 format
(si pris en charge). C'est le
format utilisé par DBX sur IRIX 6. Avec
cette option, GCC utilise des fonctionnalités de
NAIN version 3 quand ils sont utiles;
la version 3 est à la hausse compatible avec
la version 2, mais elle peut provoquer des
problèmes pour les anciens débogueurs.
Générer un dSYM fichier à l'aide de dsymutil. Si l'outil n'est pas reconnu dans la ligne de commande, utilisez spotlight pour trouver.
IMPORTANT: Placer .application fichier sur votre mac HD avant de générer le dSYM si vous travaillez sur un lecteur réseau.
dsymutil MyApp.app/MyApp-o
MyApp.app.dSYM
Lieu les .dSYM fichier sur le mac disque local et d'exécuter des Instruments comme vous le feriez normalement.
Resettig spotlight indexation:
Si les symboles ne sont pas indiquées, il est peut-être parce spotligh est buggé. Vous pouvez essayer de mettre à zéro les projecteurs de l'indexation par l'ajout de votre dossier contenant le dSYM de fichier (ou même votre voiture) de la "Empêcher le projecteur de la recherche sur ces emplacements" dans les préférences de spotlight, puis de l'enlever tout de suite.