Débogage avec Bochs + GDB: « ​​ne peut pas trouver les limites de la fonction actuelle »?

StackOverflow https://stackoverflow.com/questions/3082570

Question

Je travaille sur la rédaction d'un système d'exploitation et je suis en cours d'exécution dans des problèmes en essayant de déboguer mon code. J'utilise GDB pour se connecter au bout de GDB Bochs à « distance » debug mon noyau. Connexion fin des travaux, fait comme les symboles de débogage de chargement à partir du fichier du noyau. Je mis un point d'arrêt pour la fonction kmain, qui est situé avec succès, et les pauses débogueur correctement (dans mon noyau). Cependant, je ne peux pas « pas » ou « suivant » dans mon code, ne peut GDB déterminer en apparence ligne de code est la ligne courante.

Lorsque je tente de « pas », je reçois le message suivant: « Vous ne trouvez pas les limites de la fonction actuelle ». Ceci est le seul message d'erreur que je reçois à tout moment.

Mon code est compilé dans GCC avec le drapeau -g (je l'ai essayé d'autres types d'informations de débogage en utilisant les options de GCC;. Aucun n'a travaillé) Je l'ai essayé de regarder le manuel GDB, ainsi que la recherche de la réponse , et je suis totalement déconcerté. Toute aide serait incroyable.

Merci!

Était-ce utile?

La solution

Eh bien, je me suis mise au point de travail, mais je devais changer émulateurs. J'ai pu obtenir le fonctionnement GDB avec Qemu, même si j'eu des problèmes aussi le faire. Pour obtenir GDB de se connecter au gdbserver Qemu, je devais passer l'option suivante à Qemu: "-gdb tcp :: 1234, ipv4". Ça m'a pris une éternité pour comprendre cela ... Debugging fonctionne parfaitement maintenant!

Autres conseils

googler jette vers le haut « Ceci est parce que quand vous attaché à gdbserver, le processus sous debug n'a pas complété le code C start-up » http: // www .cygwin.com / ml / gDB / 2005-03 / msg00237.html ... http://www.bravegnu.org/gnu-eprog/c-startup.html décrit le processus lorsque vous codez pour les appareils embarqués, peut-être cette volonté d'aide?

Si vous trouvez la réponse s'il vous plaît poster ici que je voudrais savoir ce que la solution au problème est trop.

Je ne sais pas pourquoi, mais bochs avec gdb-talon permis semble être pointilleux avec les options de configuration. Sur un système options suivantes briser: --enable-x86-64, --enable-VMX

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top