Debugga C kod med emacs och gdb: Difference between revisions
mNo edit summary |
|||
Line 28: | Line 28: | ||
{{Box Kommando|gcc -o calcsum -g main.c|}} | {{Box Kommando|gcc -o calcsum -g main.c|}} | ||
== | == Debugga koden == | ||
Börja med att starta igång emacs i samma katalog som koden och ditt kompilerade program: | Börja med att starta igång emacs i samma katalog som koden och ditt kompilerade program: | ||
{{Box Kommando|emacs &|}} | {{Box Kommando|emacs &|}} | ||
Line 36: | Line 36: | ||
{{Box Kommando|(gdb) break main|Breakpoint 1 at 0x400480: file main.c, line 8.}} | {{Box Kommando|(gdb) break main|Breakpoint 1 at 0x400480: file main.c, line 8.}} | ||
Kör sedan programmet fram till denna brytpunkt genom att köra kommandot run eller r: | Kör sedan programmet fram till denna brytpunkt genom att köra kommandot run eller r: | ||
{{Box Kommando|(gdb) r| | {{Box Kommando|(gdb) r|Starting program: /home/peter/tmp/hello/calcsum | ||
Starting program: /home/peter/tmp/hello/calcsum | |||
Breakpoint 1, main () at main.c:8}} | Breakpoint 1, main () at main.c:8}} | ||
Ett fönster med koden ska nu öppnas i ett emacs fönster: | |||
[[Category:Gentoo Linux]] | [[Category:Gentoo Linux]] |
Revision as of 01:18, 13 April 2008
Denna guide visar hur man kommer igång med att debugga C kod med gdb. gdb startas i emacs för att kunna på ett enklare sätt sätta brytpunkter, titta på variabler, titta på koden m.m. Program som måste vara installerade:
- gcc
- gdb
- emacs
Kodexempel
Följande kod används i denna guide:
Kompilera koden med debuggstöd
Kompilera koden med debuggstöd: Template:Box Kommando
Debugga koden
Börja med att starta igång emacs i samma katalog som koden och ditt kompilerade program: Template:Box Kommando
Starta sedan gdb i emacs genom att trycka på M+x och skriva kommandot gdb. Emacs kommer sedan att fråga: Run gdb (like this): gdb --annotate=3 calcsum. Tryck bara på Enter för att acceptera kommandot. Börja sedan med att sätta en brytpunkt på funktionen main(): Template:Box Kommando Kör sedan programmet fram till denna brytpunkt genom att köra kommandot run eller r: Template:Box Kommando Ett fönster med koden ska nu öppnas i ett emacs fönster: