MAC 환경에서 EOS Smart Contract(1/3)

CUBE
CUBE
Published in
4 min readMar 28, 2018

EOS 개발을 위해 국내 커뮤니티에 있는 EOS Mac 환경에 대한 내용을 보고 따라하면 상당한 오류가 출력되는 것을 볼 수 있습니다. 그 이유는 EOS 메뉴얼을 그대로 번역해서 올려놨기 때문으로 보입니다. 그래서 이번엔 직접 Mac 환경에서 EOS 스마트 컨트렉트를 실행하는 방법을 포스팅하려고 합니다.

설치 환경 구성

EOS는 Mac의 llvm 환경에서 컴파일을 합니다. 그러므로 먼저 xcode를 업데이트를 먼저 실행해야 합니다.

$ brew install cmake
$ brew update cmake
$ xcode-select –install
$ ruby –e “$(curl-fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)”

xcode의 업데이트가 끝났다면 EOS를 클론합니다.

$ git clone https://github.com/eosio/eos -- recursive
$ cd eos/
$ git checkout DAWN-2018-02-14
$ ./build.sh Darwin

여기까지 EOS Wiki에 나온 메뉴얼대로 따라해보았습니다. 그러나 이렇게 진행하면 오류가 나는 걸 볼 수 있습니다. 그 이유는 최근 EOS의 업데이트가 있었기 때문으로 보입니다.

오류 해결을 위해서 openssl 과 mongo db driver를 설치합니다. Root에 EOS 폴더를 지우고 라이브러리 설치 후 다시 위의 진행을 반복해주세요.

$ cd
$ brew install openssl
$ export CPPFLAGS=”-I/usr/local/opt/openssl/include”
$ export LDFLAGS=”-L/usr/local/opt/openssl/lib”
$ git clone https://github.com/mongodb/mongo-cxx-driver.git --branch releases/stable --depth 1
$ cd mongo-cxx-driver/build
$ cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local ..
$ make
$ sudo make install
$ git clone https://github.com/eosio/eos --recursive
$ cd eos
$ git checkout DAWN-2018-02-14
$ git submodule update –recursive

위의 내용을 진행한 후 아래의 내용을 진행해주세요. 아래 내용을 건너뛰면 executable 생성이 안됩니다.

$ git submodule init
$ git submodule update
$ cmake -DEOS_LIBBSONCXX=/usr/local/lib/libbsoncxx.dylib -DEOS_LIBMONGOCXX=/usr/local/lib/libmongocxx.dylib
$ ./build.sh darwin

이제 아래 스크린샷과 같은 결과가 나온다면 성공입니다.

마지막으로 아래의 스크린샷과 같이 executable이 생성되었다면 환경설정이 완료되었습니다.

이번에는 EOS 스마트 컨트렉트를 위한 환경설정을 다루었고 다음 회차에서는 Run과 Wallet, Key 생성, Account 생성에 대해 포스팅 해보겠습니다.

투명한 게임 생태계를 위한 블록체인 플랫폼 ITAM Games

ITAM Games의 미디움을 구독하시면 새롭게 업로드 되는 정보를 가장 빠르게 확인하실 수 있습니다.

ITAM Games의 카카오톡 오픈채팅에서는 ITAM Games와 EOS 개발 관련 이야기를 나눌 수 있습니다. 👫

웹사이트: https://itam.games
카카오톡: https://open.kakao.com/o/g7XFlhJ
텔레그램: https://t.me/itamgames

--

--