원래는 GDB 서버랑 클라이언트로 나누어서 보통 보드에다가 서버 돌리고, 호스트에서 접속해서 제어하는 방식을 쓰는데 뭐 접속이 안되서 그냥 클라이언트로 돌렸다. (당연히 해당보드에 맞게 컴파일해야 한다.)
gdb는 간단하게 다음과 같이,
gdb ./program_name arg1, ...
으로 실행하면 된다.
break 방법으로
(gdb) b main //함수로 break
(gdb) b crc.c:32 //소스파일 내 라인으로 break
break 정보를 볼라면,
info break
하면 되고, 다음의 명령어로 비활성/활성/삭제가 가능하다. (#은 break 에 해당하는 넘버)
disable break #
enable break #
delete break #
레지스터 내용을 볼라면,
info reg
특정 변수 값을 볼라면,
print var_name (변수 값 출력)
현재까지 호출된 fuction 을 backtrace할라면,(괄호는 간단한 명령어)
backtrace(bt)
스레드 관련 명령어는 다음과 같다.
info threads
위 명령으로 thread 별 lwp pid를 확인할 수 있다.(LWP:LightWeight Process)
스레드 인덱스 별로 backtrace 할려면,
t 13 // 13은 스레드 인덱스
와 같이 하면 된다.
'리눅스 > 스크립트/유틸' 카테고리의 다른 글
[Makefile] 다른 makefile 포함 (0) | 2013.12.30 |
---|---|
openssl 을 이용한 암호화 방법 (0) | 2013.11.25 |
[Makefile] overriding target 관련 warning 메세지 (0) | 2013.09.02 |
[byobu] vertical line 없애기 (0) | 2013.09.01 |
ubuntu에 설치된 패키지 리스트 보기 (0) | 2013.07.25 |