일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 최강욱
- 킹덤 고근희
- 김영권
- 미국 금리인하
- 이상형 만들기
- 유튜버 김재석
- 리리남매
- 성남 코로나 확진자
- 김영권 아내
- 뭉쳐야 찬다
- 해킹
- 김재석
- 스콜피온킹
- 폰폰테스트
- libtins
- 고민정
- 성남은혜의강교회
- 금리인하
- 제넥신
- 임영규
- 은혜의 강 교회
- 홍혜걸
- 이지혜
- 픽크루
- 조희연
- 이태원 클라쓰 15회 예고
- 양적완화
- 스페인 코로나
- 불가피
- 학교 개학 연기 4월
- Today
- Total
Dork's port
우분투 비트코인 코어 설치하기(Install bitcoin core on ubuntu) 본문
BlockChain 공부를 하기에 앞서 Bitcoin core를 설치해보고 직접 보는게 좋다는 교수님 말씀에 설치해보기로 했다.
현재 작성하는 방법은 삽질을 통해 얻은 과정으로 명확하거나 가장 간단하지 않을 수도 있다(실제로 configure에서 많은 옵션을 제공하거나 폴더내에 많은 쉘 스크립트를 통해 편리하게 설치할 수 있으나, 무지함으로 인해 삽질을 조금한 후 포스팅 한것이라서 정리가 잘 되어있진 못하다).
설치과정중 github document를 보지 않아 삽질이 많았는데, 삽질과 관련해서는 정상적인 설치과정을 작성한 후 적어두도록 하겠다. 따라하는 도중 오류가 발생할 경우 아래를 참조하자!
설치에 앞서 영어가 편한 분들이나, github의 document에 익숙하신분은 bitcoin에서 제공하는 document를 참고하는게 빠를 것 같다.
우선 환경은 아래와 같다.
$ uname -a
버전은 4.15.0-45-generic 이며 현재 Ubuntu 공식 사이트에서 제공하는 최신버전을 설치한 것이며 update와, upgrade만 한 상태이다.
$ sudo apt-get update -y && sudo apt-get upgrade -y && sudo apt-get dist-upgrade
위의 명령어로 운영체제의 업데이트가 가능하다.
우선 설치하기에 앞서, 기본적으로 설치 진행에 필요한 패키지들을 설치하도록 하겠다. 설치 직후이므로 기본 패키지 외에는 깔려있지 않았으므로, 기본적인 것들을 먼저 설치하도록 하자.
$ sudo apt-get install git curl
그리고 난 후 build에 필요한 패키지를 다음 명령어를 통해 설치하도록 하자.
$ sudo apt-get install build-essential libtool autotools-dev automake pkg-config bsdmainutils python3
다음으로는 필요한 패키지들을 설치하도록 하자(쉘 스크립트를 이용해서 이용하는 방법도 있는데 그건 아래에서 첨부하도록 하겠다).
$ sudo apt-get install libssl-dev libevent-dev libboost-system-dev libboost-filesystem-dev libboost-chrono-dev libboost-test-dev libboost-thread-dev
다음으로 이제 bitcoin에 관련된 파일을 다운받을 것이다.
$ git clone https://github.com/bitcoin/bitcoin.git
그러면 위와 같이 폴더가 생성된 것을 볼 수 있다.
$ cd ..
$ ./autogen.sh
그리고 원래 폴더로 돌아가 설치에 필요한 쉘 스크립트를 다시한번 실행시켜준다.
$ ./configure
그리고 난 후 configure 실행 한 후 아래의 명령어를 입력하면 끝! (처음 설치시 bitcoin의 block에 대한 모든 정보를 저장해야하므로 많은 하드디스크 용량과 시간이 소요되며, 설치 도중 berkeley-db에 관련된 이슈가 있는데 아래에서 다루도록 하겠다)
$ make
$ make install
그후 bitcoin core를 실행시켜보자.
$ bitcoind
위처럼 다운로드를 진행하며 현재 2010년 08월 29일의 77004번의 블록을 다운중 인 것을 볼 수 있다.
마침내 다운로드가 완료된 모습이며 코어가 정상적으로 블록 업데이트를 진행 중이다.
실제로 다른 사이트(https://www.blockchain.com/ko/explorer)에서 제공하는 정보와 비교해보도록 하자.
작성 시간 기준으로 567130이 마지막으로 생성되었으며 상세보기로 본 결과 해쉬도 동일한 것을 알 수 있다!
끗!
(아래는 설치도중 겪은 오류 및 해결 방법)
#스크립트를 이용한 dependency package 다운 |
처음에 다운로드 된 bitcoin 폴더에서 depends 폴더로 가준다.
다음으로 config.guess를 이용해서 본인이 사용하고 있는 운영체제의 이름을 알아올 수 있는데, 운영체제마다 설치에 필요한 패키지가 다르기 때문에 이름을 통해 다운받게 될 것 이다.
$ ./config.guess
위와같이 사용하는 운영체제의 이름이 나왔다. 그러면 명령어를 통해 설치를 진행해주도록 하자.
$ make HOST=<운영체제 이름>
처음에 build에 필요한 package들을 정상적으로 설치하였다면, 오류가 발생하지 않을 것이다. 그러나 나는 처음 설치시 그에 관련된 package를 설치하지 않아 오류가 발생하였다.
오류는 다음과 같으며 스크린샷에 보이는 package 설치로 해결할 수 있었다.
아래는 발생한 오류 목록들이다.
curl not found
aclocal not found
정상적으로 완료되었다면 아래와 같은 화면이 나타난다.
# Berkeley DB 4.8 오류(configure: error: libdb_cxx headers missing, Namecoin Core requires this library for wallet functionality (–disable-wallet to disable wallet functionality) |
$ wget http://download.oracle.com/berkeley-db/db-4.8.30.NC.tar.gz
$ tar -xvf db-4.8.30.NC.tar.gz
$ cd db-4.8.30.NC/build_unix/
$ ../dist/configure --enable-cxx
$ make
$ sudo make install
$ sudo ln -s /usr/local/BerkeleyDB.4.8 /usr/include/db4.8
$ sudo ln -s /usr/include/db4.8/include/* /usr/include
$ sudo ln -s /usr/include/db4.8/lib/* /usr/lib
참고 : https://michael.mckinnon.id.au/2016/05/13/building-a-namecoin-server-with-ubuntu-16-04/
'BlockChain' 카테고리의 다른 글
Bitcoin에서 Double Hash의 이유(Length-Extension Attack) (4) | 2019.03.19 |
---|---|
Block Header와 Order(Internal Byte Order, little-endian order) (0) | 2019.03.19 |