[gdb] gdb extension for python 사용기
2020. 2. 28. 17:37
최근 python 프로그램을 디버깅 하기 위해서 gdb를 사용한적이 있다.
gdb for python을 사용하기 위해선 아래의 링크에 자세한 설명이 되어 있는데 나는 항상 왜 잘 안될까
https://wiki.python.org/moin/DebuggingWithGdb
gdb로 python 프로그램에 아래처럼 붙었지만 py-bt라는 명령어를 찾을수 없다.
sudo gdb -p {pid}
원인
- gdb가 python을 디버깅 하기 위한 python module이 자동적으로 로드되지 않아서 이다.
간단 해결방법
libpython.py파일을 직접 받아서 gdb에서 source로 로드한다.
wget https://hg.python.org/cpython/rawfile/2.7/Tools/gdb/libpython.py ## libpython을 받음 python2.7용 gdb -p {pid} ## pid로 프로그램에 붙는다. ... (gdb) source libpython.py ## python debug모듈을 로드함
제공되는 명령어
py-bt py-down py-locals py-up python-interactive py-bt-full py-list py-print python
사용법은 위 wiki에 있다.
추가) debuginfo-install로 설치가 제대로 안될 때
- vi /etc/yum.repos.d/CentOS-Debuginfo.repo 에서... enabled=0 을 enabled=1 로 변경하면 잘된당.
-끝-
'프로그래밍 > python' 카테고리의 다른 글
[python] macOS catalina 10.15에서 python이 SIGABRT로 자꾸 죽을때 (0) | 2020.02.28 |
---|