[컴] BitCoin 을 codeblock 을 이용해서 debugging 하기

비트코인 디버깅 / 비트코인 디버거 / bitcoin debugging with gui debugger / 비트코인 소스 디버깅 /  gdb 로 비트코인 디버깅하기.


bitcoin debugging with IDE

개인적으로 debugger 는 역시 GUI 가 좋다고 생각한다. 그래서 bitcoin 을 위한 gui debugger 를 위해 어떤 IDE 쓸까 하다. codeblocks 를 선택했다.

처음에는 CLion 을 사용하려 했는데, 상용이라 계속 쓸 수 없어서 일단 제외했다.

처음 써봤지만 구성이 간단해서 좋다. debugger 도 깔끔하게 잘 돌아가고, 속도도 쾌적한 느낌이다.

환경

  • OS: Ubuntu 14.04 LTS

절차

기본적으로 Makefile 을 만들고 시작해야 한다. bitcoin source 에서 Makefile 을 만드는 절차는 아래와 같다.[ref. 1]
  1. ./autogen.sh
  2. ./configure
이후의 절차는 아래와 같다.
  1. codeblock 설치 : sudo apt-get install codeblocks
  2. 새로운 codeblock project 만들기 : File > New > Project
  3. project 에 file 추가 : 프로젝트의 context menu(마우스 오른쪽 버튼, 이하 Project menu) > Add files recursively
  4. 사용할 Makefile 설정
    1. Project menu > Setting > Prject settings tab > check "This is a custom Makefile"
    2. Execution directory 에 Makefile 경로를 설정
  5. 빌드 옵션 조정 : Project menu > Build options > "Make" commands > Build project/target : $make -f $makefile
  6. 빌드 : Build > Build
  7. 실행파일를 output 에 옮기기
    1. Project menu > Properties > Build targets tab > Output filename 확인
    2. cp src/qt/bitcoin-qt bin/Debug/bitcoin
  8. 실행 : Debug > Start/Continue

이제 좀 더 자세히 알아보자.

IDE 설치

먼저 IDE 를 설치해 보자. 여기서는 codeblock 을 사용할 것이다. Ubuntu 에서 codeblock 의 설치는 어렵지 않다.
sudo apt-get install codeblocks

codeblock 에서 gcc compiler 및 gdb 경로 설정

linux 에서 작업을 하는 경우에는 대체로 auto detect 가 된다. 그렇지 않은 경우에 path 지정을 해줘야 한다. 아래 경로에서 가능하다.
  • compiler : Settings > compiler > toolchain executables tab
  • debugger : Settings > debugger > GDB/CDB Debugger

codeblock 설치 및 project 생성

Code::Block(이하 codeblock)을 설치하고, 새로운 project 를 한 개 만들자.
  • sudo apt-get install codeblocks
  • File > New > Project


project 에 file 추가

만들어진 project 에 file 들을 추가하자.


기존 Makefile 사용하기

 다 추가한 후에 Makefile 을 사용하도록 설정하자. Execution directory 를 잘 확인하자.
  • Prject settings tab > check "This is a custom Makefile"
  • Execution directory 에 Makefile 경로를 설정


Build 옵션 수정

Build 를 할 때 make 를 실행하는데, 이 때 command 에 기본적으로 target 이름인 Debug 가 들어간다. 이 부분을 빼주자. 안 빼주면, target 이 없어서 build error 가 난다. 이게 에러가 나도 실행을 계속 할 수는 있다.
  • Project menu > Build Options



Debugger 실행

기본적으로 output filename 에 최정 결과물인 executable 이 놓여진다. 그래서 debugger 를 실행하면 저 곳에 있는 실행파일을 실행하게 된다. 그런데 우리는 local 의 Makefile 을 사용하기 때문에 output path 가 다르다. 그래서 아래 경로를 바꿔주던지, 저 경로에 맞게 file 을 copy 하던지 하자. 

필자의 경우는 bin/Debug/에 bitcoin 라는 이름으로 내가 원하는 실행파일을 copy 해 놨다.

  • Project menu > Properties > Build targets tab > Output filename 확인


debugger 를 실행하면 된다.

Reference


댓글 없음:

댓글 쓰기