dukDukz

[블록체인] 빌드 본문

웹 개발/블록체인

[블록체인] 빌드

헤일리_HJ 2021. 9. 13. 16:07

비트코인 빌드를 위한 사전 작업

1. doc 폴더에서 build-windows.md 파일을 읽어보기

2. wsl 설치가 되어 있어야 함

3. wsl 들어가서 쉘을 작성할 수 있도록 환경 세팅

4. cd ~ 홈디렉토리에서 작업을 시작한다.

5. .md 에 나와 있는 부분을 참고해서 뭔가 설치해라


비트 코인 github

비트코인 깃헙 주소가 필요하다

https://github.com/bitcoin/bitcoin

이 코드를 다운 받아서 구현해봐야한다.

대부분 C 코드로 구현 되어 있음..

 

빌드 성공이 목표...!

 

https://github.com/bitcoin/bitcoin/blob/master/doc/build-windows.md

여기에 들어가서 보자.

 

 

$ sudo apt update
$ sudo apt upgrade
$ sudo apt install build-essential libtool autotools-dev automake pkg-config bsdmainutils curl git
build-essential C/C++ 에 필요한 기본적인 라이브러리를 제공함
libtool 라이브러리를 스크립트로 지원함 - 관리툴..?
automake makefile 을 자동적으로 생성해주는 라이브러리
pkg-config 위랑 비슷
bsdmainutils bsd(유닉스 계열 운영체제)의 유틸프로그램(라이브러리를) 리눅스에서도 사용할 수 있게..
curl http 요청 보내주는 아이
git git

 

설치할 때 꿀팁!

: 명령어 적고 오류가 났다? 그럼 그 부분도 적어놓는다.

오류남. 이런식으로,

 


설치가 끝나면

$ sudo apt install nsis

현재 Home 디렉토리에 있는 상황

workspace 폴더를 만들고 그 안으로 들어간다.

$ mkdir workspace

$ cd workspace

 

git clone 을 하고 bitcoin 폴더로 들어간다.

$ git clone https://github.com/bitcoin/bitcoin.git

$ cd bitcoin

 

$ ls -al 디렉토리 확인

 

 

실질적으로 C++ 을 빌드해주는 녀석을 설치해야 한다.

$ sudo apt install g++-mingw-w64-x86-64

$ sudo update-alternatives --config x86_64-w64-mingw32-g++

두번째에서는 (posix를 골라야함 - 1번임)

 

$ PATH=$(echo "$PATH" | sed -e 's/:\/mnt.*//g')

sed

: grep 과 내용이 비슷함.

$ echo "$PATH" 해보면 우리의 path 값이 찍힘

$ echo "$PATH" | grep /usr - 찾아줌

sed 는 찾아서 어떤 내용으로 바꿔줘라



$ sudo bash -c "echo 0 > /proc/sys/fs/binfmt_misc/status"

 

Makefile 이 존재하는 디렉토리

$ cd depends

$ ls 
해보면 Makefile 이 있음

$ vi Makefile 
빌드하는 순서를 정해주는 ... 그런




빌드

빌드하는 방법

$ make HOST=x86_64-w64-mingw32

 

* 실수 내역

1. 경로문제

/bin/sh : 1 : File/nodejs/:/:/mnt/c/Program : not found

-> 경로 문제

$ PATH=$(echo "$PATH" | sed -e 's/:\/mnt.*//g')

다시 써주면 됨

 

2. gcc

B2_TOOLSET is gcc, but the 'gcc' command connect be executed.

Make sure 'gcc' is in PATH, or use a different toolset

 

gcc 설치가 안되어 있는것 같아서

sudo apt install gcc

 

3. 그리고 자잘한 에러들

sudo apt install build-essential libtool autotools-dev automake pkg-config bsdmainutils curl git

요거 중에 설치 안된것 있어서 오류가 날 수 있음


빌드 완료 후,

 

$ cd ..

$ pwd

/home/hyejjun/workspace/bitcoin
여기로 이동한다

 

$ ./autogen.sh      를 실행해라
$ CONFIG_SITE=$PWD/depends/x86_64-w64-mingw32/share/config.site ./configure --prefix=/
$ make -4

하고


$ cd /mnt/c/Users/USER

로 들어가서 

 

$ mkdir work    폴더 생성

인스톨 파일을 넣을 디렉토리를 선정한거임

 

$ cd ~/workspace/bitcoin 	에 들어가서
$ sudo make install DESTDIR=/mnt/c/Users/USER/work

그러고 work 폴더에 들어가서 보면 설치 파일이 생긴걸 확인 할 수 있다.

 

$ make deploy

내 서버가 p2p 서버가 될 것이다.

 

1. /data 생성

C:\Users\USER\work 여기에서

폴더 /data 생성

 

2. /bin 에서 작업

bin 폴더 들어가서 오른쪽 버튼 클릭 -  윈도우 터미널 열기 (해당 경로의 터미널을 연것이다.)

$ ls 실행해보고

 

bitcoin-qt.exe 얘를 실행할건데

 

이걸 실행되면서 블럭들을 어디에 넣을건지 세팅해줌

$ ./bitcoin-qt.exe -datadir=c:\Users\USER\work\data

를 치면 bitcoin core 가 실행된다.



하면 어떤 창이 딱 뜨게 됨

 

여기까지가 비트코인 빌드

나오는 거 봤으면 종료 하기