how to use gdb

GDB 사용법

GDB란?

GDB(GNU Debugger)는 프로그램의 디버깅에 사용되는 강력한 도구입니다. GDB는 다양한 플랫폼에서 작동하며, C, C++, ADA 등 다양한 언어로 작성된 프로그램을 지원합니다.

GDB 설치

GDB를 사용하기 위해서는 우선 해당 툴을 설치해야 합니다. 만약 리눅스를 사용한다면 아래 명령을 실행하여 GDB를 설치할 수 있습니다.

bash
$ sudo apt-get install gdb

기본적인 GDB 명령어

GDB는 터미널에서 사용하는 명령어 기반의 도구입니다. 여러 GDB 명령어를 사용하여 프로그램의 실행, 중단점 설정, 변수 값 확인 등을 할 수 있습니다. 아래는 GDB의 몇 가지 주요 명령어입니다.

  • run: 프로그램을 실행합니다.
  • break: 중단점을 설정합니다.
  • step: 코드 한 줄씩 실행하며, 함수 내부로 들어갑니다.
  • next: 코드 한 줄씩 실행하며, 함수 내부로 들어가지 않습니다.
  • print: 변수의 값을 출력합니다.

GDB 사용 예제

GDB를 사용하여 간단한 C 프로그램을 디버깅하는 방법을 살펴보겠습니다.

“`c

include

int main() {
int x = 5;
x++;
printf(“x = %d\n”, x);

return 0;

}
“`

위의 코드는 변수 x를 5로 초기화한 후 1을 증가시키고, 그 값을 출력하는 간단한 프로그램입니다. 이를 GDB를 사용해 디버깅해보겠습니다.

  1. 아래 명령으로 GDB를 실행합니다.

bash
$ gdb a.out

  1. 아래 명령으로 main 함수에 중단점을 설정합니다.

bash
(gdb) break main

  1. 실행을 시작합니다.

bash
(gdb) run

  1. 코드 한 줄씩 실행하면서 변수 x의 값을 확인합니다.

bash
(gdb) step
(gdb) print x

출력 결과는 다음과 같습니다.

$1 = 6

  1. 프로그램 실행을 마치고 GDB를 종료합니다.

bash
(gdb) quit

위 예제에서는 GDB를 사용하여 변수 x를 디버깅하였지만, GDB는 더 많은 기능과 디버깅 옵션을 제공합니다. GDB 공식 문서를 참조하여 더 자세한 정보를 알아볼 수 있습니다.

참고 자료