Utilisation de GDB
6 sujets de 1 à 6 (sur un total de 6)
-
Voilà, j’essais d’utiliser gdb.
Je compile donc mon source avec l’option -g pour inclure les infos de debogage (j’ai essayé aussi avec -gstab et -gstab+)
ex : gcc toto.c -noixemul -g
Puis, je charge l’executable obtenu (a.out par exemple) avec :
gdb a.out
Là j’arrive dans « l’éditeur » de gdb (pas de message d’erreur et a.out a bien été charger en memoire)
Bon, pour lancer mon programme dans gdb je tape :
run
Là, j’ai un message « erreur » qui m’indique qu’il de sait pas quoi faire avec le fichier « a.out ». et que je peux voir l’option « target » en tapant « help target ».
Mais l’option « target » ne m’aide pas beaucoup …
Ma configue :
– A1200 avec Blizzard PPC et 060 (+BVision)
– GCC 3.40 et gdb 4.18 (de mémoire, car j’ai pas mon miga à coté de moi)
– Je compile en 68K
Autre petit souci. Dans l’éditeur de gdb je n’arrive pas à taper certaines lettres comme par exemple le « a ». Ca fait juste bip + le flache écran. Par contre le « A » passe !?
J’ai essayé avec la version 4.16 de gdb : pareil.
J’utilise un clavier pc avec une tour Inifive. Mais, je pense pas que celà vient de là
Quelqu’un peu m’aider ?
Bon le message exacte de gdb est :
Starting program : /Ram/a.out
Don’t know how to run. Try « help target »
Que je compile avec ou sans -xixemul sa fait le même résultat
Pour gcc je l’ais eu sur le site geekgadgets
idem pour gdb (j’ai essayé aussi avec une version venant d’aminet)
Bonjour,
Je n’ai pas d’expérience de GDB sous os3.x/68K, mais voici comment ça se passe sous OS4, ça ne doit pas être très différent.
1 – Un programme qui ne plante pas
http://s.guillard.free.fr/OS4/gdb1.jpg te montre un source trivial, compilé avec l’option « -ggdb », lancé sous gdb. Définition d’un breakpoint, lancement (et arrêt sur le breakpoint), listage du source, exécution pas à pas jusqu’à la fin normale, fin
2 – s’attacher à un programme qui plante
http://s.guillard.free.fr/OS4/gdb2.jpg te montre un source trivial mais qui va planter (on tente d’écrire dans la page zéro, qui est protégée sous os4, donc on va avoir une exception MMU du genre 8000 0003, Data Storage Interrupt en zéro).
Le programme est lancé, il affiche ses printf, puis l’instruction illégale affiche un grimreaper.
Le clic sur le bouton ‘attach to GDB’ lance alors GDB, qui te montre où ton programme fait quelque chose d’illégal, etc.
Tu vois ça sur http://s.guillard.free.fr/OS4/gdb3.jpg
Voilà, espérant que ça t’éclaire un poil
Amigalement,
—
Stéphane Guillard
Bon, j’ai résolu le problème du clavier.
Il suffit de taper dans gdb :
set editing off
quand cette variable est sur on, gdb utilise l’interface « readline » ce qui trache les codes du clavier.
Voilà, j’ai suivi ta procedure.
Ca marche tout pareil jusqu’à la commande « run » où j’obtiens toujours le même message …
Mais merci pour tes grabs d’écran
(ça n’a pas l’air d’être mal l’OS4 )
Ah, si j’avais un peu plus de frics ça plairait bien un ptit Aone ou un ptit Peg …
Bon, j’vais commencer à économiser …
6 sujets de 1 à 6 (sur un total de 6)
- Vous devez être connecté pour répondre à ce sujet.
› Forums › AmigaOS, MorphOS et AROS › Développement › Utilisation de GDB