bitcoin debugging with IDE
개인적으로 debugger 는 역시 GUI 가 좋다고 생각한다. 그래서 bitcoin 을 위한 gui debugger 를 위해 어떤 IDE 쓸까 하다. codeblocks 를 선택했다.
처음에는 CLion 을 사용하려 했는데, 상용이라 계속 쓸 수 없어서 일단 제외했다.
처음 써봤지만 구성이 간단해서 좋다. debugger 도 깔끔하게 잘 돌아가고, 속도도 쾌적한 느낌이다.
환경
- OS: Ubuntu 14.04 LTS
절차
기본적으로 Makefile 을 만들고 시작해야 한다. bitcoin source 에서 Makefile 을 만드는 절차는 아래와 같다.[ref. 1]- ./autogen.sh
- ./configure
- codeblock 설치 : sudo apt-get install codeblocks
- 새로운 codeblock project 만들기 : File > New > Project
- project 에 file 추가 : 프로젝트의 context menu(마우스 오른쪽 버튼, 이하 Project menu) > Add files recursively
- 사용할 Makefile 설정 :
- Project menu > Setting > Prject settings tab > check "This is a custom Makefile"
- Execution directory 에 Makefile 경로를 설정
- 빌드 옵션 조정 : Project menu > Build options > "Make" commands > Build project/target : $make -f $makefile
- 빌드 : Build > Build
- 실행파일를 output 에 옮기기 :
- Project menu > Properties > Build targets tab > Output filename 확인
- cp src/qt/bitcoin-qt bin/Debug/bitcoin
- 실행 : 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 를 실행하면 된다.
댓글 없음:
댓글 쓰기