2015년 12월 30일 수요일

gdb print stl

gdb쓸 때 vector, map등 stl이 pretty하게 보이지 않으면 다음을 이용한다.

https://sourceware.org/gdb/wiki/STLSupport

링크에 세가지 방법이 있는데, 첫번째 방법만 써도 거의 모든 문제가 해결된다.
혹시 링크 깨질까봐 옮겨두자면,
svn co svn://gcc.gnu.org/svn/gcc/trunk/libstdc++-v3/python
하고, ~/.gdbinit에 다음을 추가.
sys.path.insert의 path에는 위에서 받은 python directory의 path를 넣어준다.
python
import sys
sys.path.insert(0, '/home/maude/gdb_printers/python')
from libstdcxx.v6.printers import register_libstdcxx_printers
register_libstdcxx_printers (None)
end