> Linux Reviews > man >

gdb

Le déboggeur GNU.


  1. gdb.1.man


1. gdb.1.man

Manpage of GDB

GDB

Section: Manuel de l'utilisateur Linux (1)
Updated: 2 août 2000
Index Return to Main Contents
 

NOM

gdb - Le déboggeur GNU.  

SYNOPSIS

gdb
[-help] [-nx] [-q] [-batch] [-cd=rép] [-f] [-b bps] [-tty=périphérique] [-s fich_symb] [-e prog] [-se prog] [-c core] [-x cmds] [-d rép] [prog[core|ID_proc]]
 

DESCRIPTION

Le but d'un déboggeur tel que GDB est de vous permettre de voir ce qui se passe ``à l'intérieur'' d'un autre programme quand il s'exécute --- ou ce qu'un autre programme faisait au moment où il s'est crashé.

GDB peut faire quatre principaux types de choses (en plus d'autres choses qui les aident) pour vous aider à détecter les bogues en action :

   *
Démarrer votre programme, en spécifiant tout ce qui pourrait affecter son comportement.

   *
Faire stopper votre programme sous des conditions spécifiées.

   *
Examiner ce qui s'est passé, quand votre programme s'est arrêté.

   *
Changer des choses dans votre programme, de sorte que vous puissiez vous exercer en corrigeant les effets d'un bogue et continuer pour en apprendre sur un autre.

Vous pouvez utiliser GDB pour débogger des programmes écrits en C, C++, et Modula-2. Le support du Fortran sera ajouté dès qu'un compilateur Fortran GNU sera prêt. GDB est invoqué avec la commande shell gdb. Une fois lancé, il lit les commandes du terminal jusqu'à ce que vous lui disiez de s'arrêter avec la commande GDB quit. Vous pouvez obtenir de l'aide en ligne de gdb lui-même en utilisant la commande help.

Vous pouvez lancer gdb sans arguments ni options, mais la manière la plus habituelle de lancer GDB est de lui donner un ou deux arguments, en spécifiant le programme exécutable comme argument :


gdb programme

Vous pouvez également le démarrer avec à la fois un programme exécutable et un fichier core (fichier d'état de la mémoire au moment du crash) spécifiés :


gdb programme core

Vous pouvez, à la place, spécifier un identificateur de processus en second agument, si vous voulez débogger un processus en cours d'exécution :


gdb programme 1234

attacherait GDB au processus 1234 (à moins que vous ayez également un fichier nommé `1234'; GDB cherche d'abord un fichier core).

Voici quelques une des commandes GDB les plus fréquemment utiles :

break [fichier:]fonction
Placer un point d'arrêt sur la fonction function (dans le fichier fichier).
run [liste_arguments]
Démarrer votre programme (avec liste_arguments, si spécifié).
bt
Backtrace: afficher la pile d'appels du programme.
print expression
Afficher la valeur d'une expression.
c
Continuer l'exécution de votre programme (après l'avoir arrêté, par exemple suite à un point d'arrêt).
next
Exécuter la ligne suivante du programme (après s'être arrêté); passer au-dessus de tout appel de fonction dans la ligne.
step
Exécute la ligne suivante du programme (après s'être arrêté);pénétrer tout appel de fonction dans la ligne.
help [nom]
Affiche une information sur la commande GDB nom, ou des informations générales sur l'utilisation de GDB.
quit
Sortir de GDB.

Pour des détails complets sur GDB, voir Using GDB: A Guide to the GNU Source-Level Debugger, par Richard M. Stallman et Roland H. Pesch. Le même texte est disponible en ligne dans l'entrée gdb du programme info .  

OPTIONS

Tout argument autre que des options spécifiant un fichier exécutable et un fichier core (ou un ID de processus), çàd le premier argument rencontré sans drapeau d'option spécifié est équivalent à une option `-se,' et le second, s'il y en a un, est équivalent à une option `-c' si c'est le nom d'un fichier. Beaucoup d'options ont à la fois les formes longue et courte; les deux sont montrées ici. Les formes longues sont aussi reconnues si vous les tronquez, pour autant qu'une partie suffisante de l'option soit présente pour éviter toute d'ambiguïté. (Si vous préférez, vous pouvez marquer les arguments d'option avec `+' plutôt qu'avec `-', bien que nous illustrons la convention la plus courante.) Toutes les options et arguments de ligne de commandes sont traités dans un ordre séquentiel. L'ordre a une importance quand l'option `-x' est utilisée.
-help
-h
Lister toutes les options, avec de brèves explications.
-symbols=fichier
-s fichier
Lire la table des symboles à partir du fichier fichier.
-write
Autoriser l'écriture dans les fichiers exécutables et les fichiers core.
-exec=fichier
-e fichier
Utiliser le fichier fichier comme le fichier exécutable à exécuter quand c'est approprié, et pour examiner de simples données en conjonction avec un déchargement de la mémoire (core dump).
-se=fichier
Lire la table des symboles à partir du fichier fichier et l'utiliser comme fichier exécutable.
-core=fichier
-c fichier
Utiliser le fichier fichier comme étant le core dump à examiner.
-command=fichier
-x fichier
Exécuter les commandes GDB à partir du fichier fichier.
-directory=répertoire
-d répertoire
Ajouter répertoire au chemin où rechercher les fichiers sources.

-nx
-n
N'exécuter de commandes d'aucun fichier d'initialisation `.gdbinit' . Normalement, les commandes dans ces fichiers sont exécutées après que toutes les options de ligne de commandes, et tous les arguments aient été traités.
-quiet
-q
``Silence''. Ne pas afficher les messages d'introduction et de copyright. Cers messages sont également supprimés en mode non interactif.
-batch
Exécuter en mode non interactif. Quitter avec la valeur de retour 0 après avoir traité tous les fichiers de commandes spécifiés par`-x' (et `.gdbinit', s'ils ne sont pas désactivés). Quitter avec une valeur de retour non nulle si une erreur s'est produite durant l'exécution des commandes GDB dans les fichiers de commandes. Le mode non interactif peut être utile pour exécuter GDB comme un filtre, par exemple pour télécharger et lancer un programme sur un autre ordinateur; pour rendre ceci plus utile, le message


Program exited normally. (Programme terminé normalement)

(qui est d'habitude affiché chaque fois qu'un programme s'exécutant sous le contrôle de GDB se termine) n'est pas affiché dans le mode non interactif.

-cd=répertoire
Lancer GDB en utilisant répertoire en tant que répertoire de travail, au lieu du répertoire courant.
-fullname
-f
Emacs utilise cette option quand il exécute GDB comme un sous-processus. Cela dit à GDB de sortir le nom du fichier complet et le numéro de ligne d'une façon standard, reconnaissable, à chaque fois qu'un cadre de pile est affiché (ce qui inclut toutes les fois où le programme s'arrête). Cette forme reconnaissable ressemble à deux caractères` 32' , suivis du nom du fichier, du numéro de ligne et de la position du caractère séparés par des deux-points, et un saut de ligne. Le programme d'interface Emacs-vers-GDB utilise les deux caractères` 32' comme un signal pour afficher le code source du cadre.
-b bps
Règler la vitesses de la ligne (bauds ou bits par seconde) de toute interface sérielle utilisée pas GDB pour le déboggage à distance.
-tty=périphérique
Exécuter en utilisant périphérique pour l'entrée et la sortie standard de votre programme.

 

VOIR AUSSI

l'entrée `gdb' dans le fichier info; Using GDB: A Guide to the GNU Source-Level Debugger, Richard M. Stallman et Roland H. Pesch, July 1991.  

COPYING

Copyright (c) 1991 Free Software Foundation, Inc.

L'autorisation est donnée de créer et de distribuer des copies textuelles de ce manuel, à condition que la notice de copyright et la notice de permission soient préservées dans toutes les copies.

L'autorisation est donnée de copier et distribuer des versions modifiées de ce manuel sous les conditions de copie textuelle, à condition que l'entièreté du travail dérivé résultant soit distribuée sous les termes d'une autorisation identique à celle-ci.

L'autorisation est donnée de copier et distribuer des traductions de ce manuel dans n'importe quel autre langue, sous les conditions ci-dessus pour les versions modifiées, sauf que cette notice de permission peut être incluse dans des traductions approuvées par la Free Software Foundation au lieu de l'anglais originel.  

TRADUCTION

Frédéric Delanoy, 2000.


 

Index

NOM
SYNOPSIS
DESCRIPTION
OPTIONS
VOIR AUSSI
COPYING
TRADUCTION

This document was created by man2html using the manual pages.
Time: 17:36:45 GMT, October 23, 2013

SVENSKA - SVENSKA - ja - pl