------------------ 실행 방법 ------------------
gdb 프로그램명 ex) gdb bugprg
gdb 프로그래명 코어파일명 ex) gdb bugprg core.14998
gdb 프로그램명 실행중인 프로세스 PID ex) gdb bugprg 14998
------------------- 종료 방법 -----------------
q or Cntr+d
-------------------- 보기 ---------------------
set listsize 20 -> 한번에 출력되는 행 수 조절
l(list) -> 소스 내용 출력
l 10 -> 10행을 기준으로 출력
l func이름 -> func을 기준으로 출력
l main -> main함수 기준으로 출력
l file.c:func -> file.c의 func을 기준으로 출력
-------------------- 브레이크 포인트 -------------
r -> 어떤 파일의 어떤 함수 부분에서 어떠한 문제가 발생했다는 것을 표시
bt -> 스택을 백트레이스 하면서 어떤 함수를 호출하다가 문제가 발생했는지 표시
b func -> funt시작에 브레이크 포인트 설정
b 10 -> 10행에 브레이크 포인트 설정
b file.c:func -> file.c의 func에 브레이크 포인트 설정
b +2 -> 현재 행에서 2개 행 이후에 브레이크 포인트 설정
b 10 if var =0 -> 10행에서 설정하는데 변수값이 0일때 동작
condition [N(브레이크번호)] var ==0 ->이미 그 행에 브레이크 포인트가 걸려있을때 condition으로
조건을 걸어서 설정할 수 있다.
tb -> b는 gdb내내 브레이크가 존재하고 tb는 한번만 실행한다.
cl(clear) func -> 브레이크 포인트 지움
cl 10 -> 10행에 브레이크 포인트 지움
cl file.c:10 -> 브레이크 포인트 지움
cl -> 모든 브레이크 포인트 지움
info b(info breakpoints -> 모든 브레이크 정보 보기
-------------------- 프로그램 수행 -------------------
r : 프로그램 수행
r arg1 arg2 -> arg1과 arg2를 인자로 프로그램 수행
k -> 프로그램 수행 종료
s(step) -> 현재 행 수행하고 멈춘다. 현재행이 함수를 호출하는 부분이라면 함수의 내부로 들어가서 수행
n(next) -> 현재 행 수행하고 멈춘다. 현재행이 함수를 호출하는 부분이라면 함수의 내부로 들어가지 않음
c(connection) -> 다음 브레이크 포인트를 만날때까지 수행
u -> for문을 빠져나옴
finish -> 함수가 끝난 시점으로 간다
return (리턴값) -> 함수의 나머지 부분을 수행하지 않고 빠져나옴
si -> 현재 인스트럭션을 수행. 함수 호출시 내부로 들어감
ni -> 현재 인스트럭션을 수행. 함수 호출시 내부로 들어가지 않음
---------------------- 값 확인 -------------------------
watch 변수명 -> 변수값이 어떻게 변하는지 확인할 수 있음
info locatls -> for문 위치에서 어떤 지역변수들이 있으며 각각 값은 무엇인지 볼 수 있음
info variables -> 어떤 전역변수들이 있으며 각각 값은 무엇인지 볼 수 있음
p 변수 -> 해당 변수 값이 보임
p 함수 -> 함수의 주소 값이 보임
p 포인터 변수 -> 포인터 변수가 가리키는 주소
p *포인터 변수 -> 포인터 변수가 가리치는 주소에 있는 값
display 변수 -> 변수값을 매번 화면에 디스플레이 한다.
undisplay 디스플레이 번호 -> 디스플레이 설정을 없앤다.
diable display 디스플레이 번호 -> 디스플레이를 일시 중단한다.
enable display 디스플레이 번호 -> 디스플레이를 다시 활성화한다.
------------------------ 출력 형식의 지정 ----------------
t -> 2진수
o -> 8진수
d -> 부호있는 10진수
u -> 부호없는 10진수
x -> 16진수
c -> 최초 1바이트 값을 문자형으로 출력
f -> 소수점을 출력
a -> 심볼을 오프셋을 출력
'Unix/Linux' 카테고리의 다른 글
[스크랩] 리눅스 시그널 정리 (0) | 2009.09.14 |
---|---|
vi 필수 명령어 (0) | 2009.06.02 |