본문 바로가기

TroubleShooting/Etc

gdb 에서 유용한 기능 refresh

728x90
 디버깅을 위해서 gdb 를 많이 사용하지만, 수많은 옵션들을 다 이용하지 못합니다.
 break 를 많이 사용했었지만 그와 함께 사용하면 좋을 refresh 옵션을 사용하면 마치 VC 의 디버그처럼 소스코드에 하이라이트(highlight) 가 켜져서 현재 break point 중인 소스코드를 쉽게 확인할 수 있습니다.

================================================================================
# gdb exe_bin
(gdb) b test                     --------> test() 에 break point 설정
(gdb) r                            --------> 진행
..................................
Breakpoint 1, test ()          --------> test() 함수에서 드디어 break 가 걸립니다.
(gdb) refresh

--- test.c -------------------------------------------------------
|123   test()
|124   {
|125       int a;                                                                                    
|126       char *b;
|127       a = 20;
|128       sprintf(b, "%d", a);
|129    }
|130
|140    main()
|.................
-----------------------------------------------------------------
(gdb) n                          ----------> test() 함수 내에서 한 라인씩 진행. 현재 125 라인.
(gdb) n


=================================================================================
gdb 에서 사용하는 명령어 중에 l(list) 를 이용하면 되지만, 쉽게 소스를 확인할 수 있는 방법을 제공하니 사용하면 좋을듯합니다.

 

'TroubleShooting > Etc' 카테고리의 다른 글

vim 에서 UTF-8 지원  (0) 2011.07.26
vi 에서 shell 기능 막기  (0) 2011.07.20
vimdiff 많이 사용하는 기능  (0) 2011.04.29
svn externals 사용하기  (0) 2011.04.12
Active X 대체기술  (0) 2011.03.31