[Linux] GDB Variable 출력 형태 바꾸기 / C++ STL Print
GDB Variable Print Format 변경
GDB를 통해 debugging을 진행하다보면 변수를 출력하는 경우가 많다. 이 때 좀 더 눈에 읽히기 쉽도록 형태를 바꾸는 방법이 존재한다. Home 경로에 .gdbinit
파일에 설정을 해두면 된다.
set print pretty on set print object on set print static-members on set print vtbl on set print demangle on set demangle-style gnu-v3 set print sevenbit-strings off
설정하게되면 다음 예시와 같이 들여쓰기를 포함해서 출력해준다.
(gdb) print p $1 = { age_ = 10, gender_ = 77 'M', name_ = "Shumin", address_ = "South Korea" }
C++ STL Object Print
아래 링크에 있는 .gdbinit
파일을 참조하면 쉽게 C++ STL object를 출력 할 수 있다.
https://github.com/shumin215/misc/blob/master/.gdbinit
Reference
- http://jason-heo.github.io/programming/2014/04/08/using-gdb-pretty-print.html
- https://gist.github.com/skyscribe/3978082