gdb
Ubuntu 14.04를 사용하여 C++ 코드를 디버깅했습니다 . stl
컨테이너를 명령에 전달할 때 print
컨테이너의 내용을 인쇄하는 데 사용되었습니다. 그런데 일주일 전에 Ubuntu 16.04 LTS로 업그레이드했습니다. 이제 그 예쁜 프린터는 작동하지 않습니다. 인쇄하면 Python 프린터가 설치되어 있지 않을 때 얻을 수 있는 원시 컨테이너 출력을 얻습니다.
이 남자또한 같은 문제가 있습니다.
libstdcxx/v6/python.py
내 시스템에 있습니다 . libstdc++.so.6.0.21-gdb.py
자동 로드 폴더 에도 있습니다 . 에서 infopretty-printer를 인쇄하면 프린터 gdb
목록이 나오므로 stl
해당 프린터가 등록되어 있음을 알 수 있습니다. 그러나 내 변수 gdb
는 인쇄되지 않습니다 stl::list
. 나는 활성화했고 pretty-printer
, 인쇄를 예쁘게 켜기로 설정했습니다.
내 gcc 버전은 5.4이고 gdb 버전은 7.11.1입니다. 둘 다 Ubuntu 16.04와 함께 설치되었습니다. 나는 그것들을 수동으로 만들지 않았습니다. 내가 놓친 것이 분명합니까?
답변1
제 경우에는 ~/.gdbinit
파일에 다음 줄이 있었습니다.
sys.path.insert(0, '/usr/share/gcc-4.8/python/')
이를 다음과 같이 변경한 것으로 나타났습니다. (4.8->5)
sys.path.insert(0, '/usr/share/gcc-5/python/')
도움이되었습니다.