Ma question concerne le débogage à distance d'une application sur un processeur de bras incorporé à l'aide de gdb/gdbserver.Débogage de bibliothèques partagées à distance avec gdb/gdbserver
Je peux déboguer l'application elle-même, mais l'application est liée dynamiquement à une bibliothèque partagée qui implémente un protocole de communication interne. Je veux être en mesure de définir des points d'arrêt dans les fonctions de la bibliothèque partagée afin d'essayer de comprendre certains problèmes de découverte de périphériques. Je me suis assuré que la bibliothèque est compilée avec des symboles de débogage et est chargée par gdb côté hôte, je peux lister les fonctions dans la bibliothèque et même définir les points d'arrêt mais dès que j'essaie d'exécuter l'application, je reçois un message d'erreur à l'effet de:
Cannot insert breakpoint X.
Error accessing memory address : Input/output error.
où X est le nombre de points d'arrêt et gdb est une adresse bien petite pour être valide.
J'utilise la nouvelle bibliothèque sur la machine cible et sur la machine hôte, mais via mount -o bind newlib oldlib
sur la cible à partir d'un montage nfs.
Est-ce que quelqu'un a une idée de ce qui pourrait être faux? Merci d'avance.
double possible de [bibliothèques partagées avec débogage gdbserver] (https://stackoverflow.com/questions/8611194/debugging-shared-libraries-with-gdbserver) –