본문 바로가기

디버깅2

GDB로 파이썬 buffer overflow detected(segmentation fault) 디버깅 하는 방법 파이썬 코드를 작성 중에 buffer overflow로 core dump가 발생합니다. 파이썬에서 발생하는 문제 같지는 않고, 사용중인 ODBC 라이브러리에서 문제가 발생하는 것으로 보입니다. 오늘은 파이썬에서 C/C++ 라이브러리를 디버깅 하는 법을 알아보겠습니다. Table Of Contents 라이브러리 에러 발생 gdb를 이용한 파이썬 디버깅 라이브러리 에러 발생 unixodbc를 이용해서 odbc library를 통해서 db에 접근하는 간단한 프로그램을 테스트 중입니다. 그런데, db library에서 아래와같은 에러로 죽어버립니다. unixodbc의 trace로깅을 켜 놓았는데도 문제를 찾을 수가 없습니다. *** buffer overflow detected ***: terminated Abo.. 2024. 2. 13.
리눅스에서 DDD 또는 GDB 디버거가 동작하지 않을 때 - ptrace: Operation not permitted 에러 C/C++ 프로그램을 디버깅하려고하는데 “ptrace: Operation not permitted” 에러가 발생했습니다. 이 에러는 주로 두 가지 원인으로 발생합니다. 이 에러의 발생 원인과 처리 방법에 대해서 알아보겠습니다. 보안 제한으로 인한 ptrace에러 Linux 시스템에서는 보안상의 이유로 ptrace 작업을 제한할 수 있습니다. 이는 /proc/sys/kernel/yama/ptrace_scope 설정을 통해 조정할 수 있습니다. 이 설정이 0이 아닌 경우, ptrace 작업은 제한될 수 있습니다. 이를 해결하기 위해선, root 사용자로 로그인하여 해당 설정을 0으로 변경하거나, 프로그램을 root 사용자로 실행해야 합니다. 제가 사용하는 리눅스의 ptrace_scope를 찾아보니 다음과 같.. 2024. 1. 29.