web-dev-qa-db-fra.com

Ligne par ligne c - Débogage du code c ++ sous Linux Ubuntu

Je code en utilisant gedit dans Ubuntu et exécute un programme dans un terminal. Tout en travaillant dans Windows en utilisant Turboc ou Netbeans, nous pouvons déboguer le code ligne par ligne. Comment pouvons-nous le faire dans le terminal Ubuntu? ou toute autre option?

44
user123

gdb (le débogueur Gnu) est le meilleur choix

apt-get install gdb

man gdb

1.    cc -g file.c             //       compile your program ,this will generate a.out file with required debugging information 

2.    gdb a.out                //        start with gdb

3.    b main                   //        to set break point at main       

4.     run                     //        run now , and it will stop at break point main 

5.     s                       //        option s is to step single line and even step into functions

6.     n                       //        option n is to execute next line and step over functions  

7.     p    variable name      //        to print the value of variable at that particular instance very helpful  

man gdb donnera plus d'informations

Toutes les commandes gdb utiles et un exemple avec un simple programme cpp sont donnés Ici

Documentation GDB

55
Gangadhar

Je trouve que GDB (Gnu DeBugger) est le meilleur outil pour c/c ++. Il est probablement déjà installé sur votre système si vous avez installé gcc.

Pour l'utiliser, assurez-vous de compiler votre programme avec le -g drapeau:

gcc -g myprog.c -o myprog

Et lancez ensuite le débogueur avec

gdb ./myprog

Voici quelques commandes de base pour vous aider à démarrer:

b lineno           - set a break point at line 'lineno'
b srcfile:lineno   - set a break point in source file 'srcfile' at line 'lineno'
r                  - run the program
s                  - step through the next line of code
c                  - continue execution up to the next breakpoint
p varname          - print the value of the variable 'varname'
23
AlexJ136

Vous pouvez utiliser gdb pour cela.

Installez gdb s'il n'est pas déjà installé.

Sudo apt-get install gdb

Ensuite, vous pouvez déboguer l'exécutable de votre choix comme suit

gdb <executable name>

Vous obtenez une session de débogage interactive complète.

9
amrith

Vous pouvez utiliser un IDE ( http://en.wikipedia.org/wiki/Integrated_development_environment ) qui fournit des fonctions de gestion de code, de mise en évidence et de débogage. Vous pouvez essayer n'importe lequel d'entre eux.

ou vous pouvez choisir d'utiliser gdb ( https://www.gnu.org/software/gdb/ ) directement à partir de la ligne de commande.

7
HAL