11
votes

Les fichiers .dsym générés à partir de la ligne de commande (Mac)

Je viens de commencer à coder en C, et a dirigé le maquillage de quelqu'un d'autre avec le compilateur C par défaut défini sur GCC. Je suis sur Mac OSX 10.8 Mountain Lion et je pense que j'ai installé le compilateur avec "Outils de ligne de commande Xcode". Après avoir exécuté "make" sur la ligne de commande, je reçois ces fichiers .dsyms ennuyeux pour chaque programme. J'ai lu que ce sont des fichiers de débogage, mais sont-ils vraiment nécessaires? Y a-t-il un moyen de les empêcher d'être généré à partir de la ligne de commande?


2 commentaires

Vérifiez que dsymutil Etre exécuté dans le Makefile et commentez-le. GCC ON OS X ne devrait pas générer de ceux-ci. L'outil qui fait appelé dsymutil . Aussi: Non, ils ne sont pas tenus de gérer le binaire et ne sont que des fins de débogage.


Il n'y a pas de dsymutil dans le maquillage mais les drapeaux suivants sont exécutés: CFLAGS = -M32 -g -O0 -STD = gnu99 -wall


3 Réponses :


0
votes

Ils ne sont nécessaires que si vous devez interpréter des emplacements dans des traces de pile dans un rapport d'accident.


1 commentaires

Ils sont également utiles pour avoir une référence source dans GDB



30
votes

Le drapeau -g sur GCC générera des symboles de débogage. Vous pouvez simplement supprimer cet indicateur de CFLAGS .


0 commentaires

11
votes

Oui, les fichiers DSYM sont nécessaires. Plus précisément, ils contiennent les tables de symboles incluses dans les bâtiments Xcode Débogu; Release Builds Placez les symboles dans ce fichier séparé. Si vous avez besoin d'analyser une trace de pile à partir d'une version de sortie, vous aurez besoin de cela. Et assurez-vous de ne pas perdre les fichiers, car vous faites la construction, même si la source est absolument identique, ne produira pas de fichier dsym utilisable. Chaque construction reçoit une UUID et qui change avec chaque construction, même si la source n'a pas changé. (Je suppose que cela inclut un horodatage ou même un nombre aléatoire.)

Si vous jetez les fichiers DSYM, alors si vous trouvez soudainement votre application qui vous bloque, vous pouvez être désolé.


0 commentaires