10
votes

Xcode 3.2 + llvm = pas de symboles locaux lors du débogage

J'ai un projet pour Mac OS X 10.5 que je consomme 10.6 en utilisant Xcode 3.2. Lorsque j'utilise GCC 4.2 pour la construction de débogage et appuyez sur un point d'arrêt, Xcode Debugger affiche normalement des informations variables locales. Si je choisis LLVM GCC 4.2 ou Clang LLVM, lorsque je touche un point d'arrêt, les symboles locaux ne sont pas disponibles et que GDB dit aucun symbole 'Self' dans le contexte actuel si j'essaie d'imprimer auto ou tout autre symbole local. Dans tous les cas générer des informations de débogage est défini. La configuration du débogage est définie sur $ (native_arch) et 10.5 sdk, architecture active uniquement option est définie. Lorsque GDB commence, je peux le voir être configuré comme x86_64-Apple-Darwin. Je dois manquer quelque chose d'évident. Comment faire des symboles locaux d'afficher GDB lors de l'utilisation d'un compilateur LLVM?


0 commentaires

5 Réponses :



5
votes

Cela peut aider. Essayez d'éteindre "Optimisation du temps de liaison" dans les options de construction du projet. Cela résolue un problème que j'avais avec des symboles de débogage manquants.

En fait, cela fixe un tas de problèmes étranges que j'avais avec Clang. Je dirais que cette fonctionnalité est tout simplement trop saignante à l'utiliser.


0 commentaires

6
votes

Assurez-vous que vous construisez des symboles nains et aucune optimisation. LLVM est une nouvelle back-end, et tout de son code de code optimisé n'est pas connecté à la génération de symboles de débogage.


0 commentaires

10
votes

Pour ceux qui ne sont pas familiers, un peu plus en détail de la réponse de CDESpinosa, qui a fonctionné pour moi et que j'ai voté.

  1. Dans le menu Xcode, sélectionnez Projet> Modifier les paramètres du projet ...
  2. Choisissez l'onglet Construction
  3. Dans le type de recherche "Niveau d'optimisation", choisissez ce champ et sélectionnez Aucun.
  4. Recherche suivante du "format d'information de débogage", choisissez ce champ et sélectionnez "Nain" ou "Nain avec DSYM".

    aurait posé cela dans des commentaires à son poste si j'avais les privilégiés. ;)

    Cela m'a coûté un peu de temps sérieux et franchement genre de bâclé sur la partie d'Apple, mais en général, je ne peux pas me plaindre.


0 commentaires

1
votes

J'avais ce problème et je l'ai résolu en mettant une coche à côté de l'élément de menu: "Projet> Définir la configuration de construction active> Débogage". Auparavant, l'option "version" a été sélectionnée. Les habitants ont commencé à se présenter dans le débogueur de mon projet à partir de là.


0 commentaires