46 votes

gdb ne #39;t travailler sur macos High Sierra 10.13.3

J'ai installé gdb 8.1 avec de l'infusion.

J'ai codesign gdb aussi et .gdbinit comme ci-dessous:

``.

J'ai désactivé la fonction SIP:

Mais gdb ne fonctionne toujours pas:

Compiler la commande :

sortie gdb:

Quelles mesures correctes pour faire travailler gdb sur les macos sierra?

63voto

Hongbo Liu Points 1520

Cela est causé par le dernier gdb 8.1, downgrade gdb à 8.0.1 pourrait résoudre ce problème.

Comment rétrograder à gdb 8.0.1

  • Gdb courant unlink :``
  • Installer gdb 8.0.1:``
  • Facultatif : évitez le gdb de mise à niveau avec``

3voto

GnoStiC Points 129

dans mon cas, la rétrogradation à la 8.0.1 n'a pas aidé.
mais les étapes suivantes aidé.

(j'ai inséré l'étape 12, "voir si ça marche" parce que, au lieu de redémarrer, j'ai testé gdb et il a très bien fonctionné. je n'ai pas suivi les étapes 12+)


  1. Ouvrez Trousseau D'Accès
  2. Dans le menu, ouvrez Trousseau d'Accès > Certificat d'Assistant - > Créer un certificat
  3. Donnez-lui un nom (par exemple, gdb-cert)
    • Type d'identité: Racine Auto-Signé
    • Type de certificat: Signature de Code
    • Vérifier: permettez-moi de remplacer les valeurs par défaut
  4. Continuer jusqu'à ce que "spécifier un emplacement pour..."
  5. Ensemble Trousseau emplacement pour Système
  6. Créer le certificat et fermez l'Assistant de certification.
  7. Trouver certificat de Système de porte-clés.
  8. Double-cliquez sur le certificat
  9. Développer la Confiance, l'ensemble de signature de Code pour toujours faire confiance
  10. Redémarrez taskgated dans le terminal: killall taskgated
  11. Codesign gdb à l'aide de votre certificat: codesign -fs gdb-cert /usr/local/bin/gdb
  12. --- VÉRIFIER SI CELA FONCTIONNE ---
  13. L'arrêt de votre mac et de redémarrer en mode recovery (maintenir enfoncée command-Rjusqu'à l'apparition du logo apple)
  14. Ouvrez la fenêtre terminal
  15. Modifier le Système de Protection de l'Intégrité pour autoriser le débogage: csrutil enable --without debug
  16. Redémarrez votre Mac
  17. Débogage à l'aide de gdb devrait maintenant fonctionner comme prévu.

source d'information:
pré de la Sierra: https://gist.github.com/hlissner/898b7dfc0a3b63824a70e15cd0180154
Sierra: https://gist.github.com/gravitylow/fb595186ce6068537a6e9da6d8b5b96d

0voto

AB007 Points 1

J'utilise macOS 10.13.6 et j'avais le même problème que " (s'il vous plaît vérifier gdb est coconçu - voir taskgated(8)) " ...

Quand j'ai déclassé le GDB de 8.2.1 à 8.0.1 et puis créé et signé le gdb-cert à nouveau et il a simplement travaillé.

N'oubliez pas de changer le chemin de gdb de 8.2.1 à 8.0.1 dans le débogueur de l'éclipse, redémarrer et il fonctionnera.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X