[블록체인] EOS Smart Contract를 수행하여 보자 (1-Build)

in #eos3 years ago

안녕하세요. @park-june 입니다.

이번에는 강좌비슷하게 한번 해볼려고 하는데요.
주제는 EOS를 이용한 Smart Contract수행입니다.

Github의 EOS Wiki를 확인하시면 Tutorial이 나와있습니다 그것을 토대로 직접 수행해 볼려고 합니다.
나중에는 Hello-World 프로그램까지 해보는것이 목표가 될것같습니다.

참고로 EOS는 아직 Windows를 지원하지 않습니다.
따라서 저는 Windows에 개발자 옵션으로 ubuntu를 사용하겠습니다.

EOS홈페이지에서는 Ubuntu 16.10을 추천합니다.
하지만 저의 버전은 Ubuntu 16.04입니다.

그럼 이제 이상한 소리를 떠나서 설치부터 시작해 보도록 하겠습니다.
사용할수 있는 방법은 2가지가 있습니다.

  1. Code를 다운받아서 build하는 방법
  2. Docker를 이용하는 방법.

저는 1번으로 진행할 생각입니다.
https://github.com/EOSIO/eos/wiki/Local-Environment#2-building-eosio
위 주소를 참조하시면 설치하는 방법을 확인할수 있습니다.

ubuntu에서 아래의 명령어를 사용하여 코드를 다운받습니다.
git clone https://github.com/EOSIO/eos --recursive
생각보다 다운받는 시간이 오래걸립니다.   커피한잔 하셔도 될듯합니다.

다운을 다 받으시면 ./eos 폴더로 이동하여 다음의 명령어를 수행합니다.
./eosio_build.sh

위 명령어로 빌드를 시작하면 저의 경우 가장먼저 아래의 문구를 만났습니다.
The following dependencies are required to install EOSIO.
생각보다 많은것이 설치되어 있지 않아서 무려 16개의 목록이 나옵니다.

clang, lldb, libclang-dev, automake, ...등등
그후 Do you wish to install these packages?라는 질문을 해줍니다
가볍게 1번 YES를 선택하시면 위의 16개들을 설치하기 시작합니다.

이런부분은 정말로 친절한것 같습니다.
16개의 설치가 끝난후 실제로 코드들을 build하기 시작합니다.

정상적으로 빌드를 성공하면 아래와 같은 화면을 확인할수 있습니다.

그후 정상적으로 build되었는지 확인하기 위해
eos/build 에서 make test를 수행합니다.
아래와 같이 정상 수행됨을 확인할수 있습니다.

마지막으로 eos/build 에서 make install을 호출하여 주면 됩니다.

홈페이지 에서 설명되어 있는 Creating and Launching a Single Node Testnet 을 해보겠습니다.
아래의 명령어를 수행하시면 됩니다.

cd eos/build/programs/nodeos
./nodeos -e -p eosio --plugin eosio::chain_api_plugin --plugin eosio::history_api_plugin

이제 Building작업이 완료되었습니다.
다음번에는 지갑 생성등에 대해서 공부해 보겠습니다.

해당 내용은 아래의 사이트를 참조하였습니다.
https://github.com/EOSIO/eos/wiki/Local-Environment#manually-building-eosio

Sort:  

Congratulations @park-june! You received a personal award!

Happy Birthday! - You are on the Steem blockchain for 1 year!

You can view your badges on your Steem Board and compare to others on the Steem Ranking

Vote for @Steemitboard as a witness to get one more award and increased upvotes!

Coin Marketplace

STEEM 0.68
TRX 0.10
JST 0.075
BTC 56812.47
ETH 4445.16
BNB 614.63
SBD 7.26