Débogage à distance à l'erreur avec GDB

J'ai essayé de débogage à distance une application 32 bits sur x86_64 suse linux, mais obtenir cette "distance registre mal formaté" erreur.

Je démarre gdbserver à l'écoute sur le port 12345 (gdbserver localhost:12345 my_prog)

Et c'est l'erreur:

$ gdb
GNU gdb 6.6
Copyright (C) 2006 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "x86_64-suse-linux".
(gdb) target remote <ip>:12345
Remote debugging using <ip>:12345
Remote register badly formatted: T0506:0000000000000000;07:80b8bcff00000000;10:4028f0f700000000;
here: 0000000;07:80b8bcff00000000;10:4028f0f700000000;
(gdb)

C'est le debug machine serveur (uname -a):

Serveur Linux 2.6.16.60-de 0,31-smp #1 SMP tue Oct 7 16:16:29 UTC 2008 x86_64 x86_64 x86_64 GNU/Linux

Et c'est le client de débogage de la machine (uname -a):

Client Linux 2.6.16.54-0.2.5-par défaut #1 Lun Jan 21 13:29:51 UTC 2008 x86_64 x86_64 x86_64 GNU/Linux

Les deux machines sont en cours d'exécution dans les machines virtuelles si (VMWare). Le gdbserver binaire est copié à partir de la machine client pour le serveur de la machine.

(Je débogage à distance, parce que l'environnement d'exécution sur le débogage du serveur est de type production, et ne contiennent pas des outils de développement, d'accès au code source, etc.)

Toutes les suggestions sont les bienvenues.

Mise à JOUR: cela a fonctionné pour moi en émettant la commande suivante dans gdb:

définir l'architecture i386:x86-64

InformationsquelleAutor boffman | 2009-03-30