MC, 23:06 sobota, 22.01.2011 r.
Każdy większy program powinien być podzielony
na
moduły - osobne pliki zawierające
pogrupowane
funkcje itp. Tak zbudowaną aplikację można w znacznie prostszy
sposób analizować, modyfikować oraz szybciej kompilować. Co jednak,
gdy chcemy taki program przepuścić przez
debugger dbg?
Ostatnia praktyka zmusiła mnie do znalezienia odpowiedzi na to
pytanie, a że się udało - spróbuję opisać rozwiązanie w tym
artykule.
Żeby dać
breakpoint na daną linijkę w konkretnym module
programu, trzeba w pierwszej kolejności upewnić się, czy ten moduł
kompilowany jest z opcją
-g. Bez tego
dbg nie będzie nic
wiedział o naszym module, a my nie ruszymy z miejsca.
Zakładam, że mamy już skompilowany odpowiednio program,, podajmy go
zatem do dbg:
gdb nasz_program
Aby ustawić breakpoint na linijkę numer
n w
module
modul.cpp, należy wydać komendę:
b modul.cpp:n
Tym sposobem, po wydaniu powyższego polecenia oraz uruchomieniu
programu komendą
run, zatrzyma się on przy próbie wykonania
polecenia z n-tej linii kodu pliku modul.cpp, dając nam możliwość
analizowania go krok po kroku.
Komentarze (0) - Nikt jeszcze nie komentował - bądź pierwszy!