gdbserver est une commande Unix permettant de déboguer à distance (debug croisé) avec le GNU Debugger.

Il ne requiert que la présence de l'exécutable sur la cible, les fichiers sources restent du côté de la machine hôte utilisé par le développeur (avec tout de même une copie du binaire).

Principe de fonctionnement

modifier
  1. gdbserver est lancé sur la cible avec le chemin et le nom de l'exécutable à déboguer, et le numéro de port série, TCP ou UDP sur lequel écouter.
  2. gdb est lancé sur l'hôte avec le chemin et le nom de l'exécutable (et des sources) sur l'hôte, l'adresse ip et le numéro de port sur lequel se connecter (ou le port série).

Voici un exemple de commande à exécuter sur la cible (où "hello_world" est le nom de l'exécutable à lancer et "2345" le numéro de port TCP) :

gdbserver host:2345 hello_world

Côté hôte gdb se lance classiquement

gdb hello_world

puis nécessite de se connecter à distance

target remote 192.168.0.11:2345

Voir aussi

modifier

Articles connexes

modifier

Liens externes

modifier