EOS編譯安裝問題

加入主網編譯,請參考 github項目:https://github.com/CryptoLions/EOS-MainNet  

 

 

1.源碼拉取的時候必須使用–recursive

git clone https://github.com/eosio/eos –recursive

  2.源碼拉取不完整

        這是因爲github網絡慢,參考這篇博文【github訪問慢和clone慢解決方案

  3.eosio_build.sh執行後很長時間沒反應

    這是因爲編譯過程中會下載很多依賴庫,其中LLVM這個庫耗時最久,除了VPN沒有什麼太好的方法。有網友說使用國內brew源,但同時也有很多人說這個brew國內源也不太好。

  4.內存不夠錯誤

Beginning build version: 1.2

    2018年 05月 18日 星期五 07:13:36 UTC

    User: itleaks

    git head id: 29c30f10650102ffb000bb1a287dc285d582275f

    Current branch: master

    ARCHITECTURE: Linux

    OS name: Ubuntu

    OS Version: 16.04

    CPU speed: 3095.998Mhz

    CPU cores: 1

    Physical Memory: 1993 Mgb

    Disk install: /dev/sda1

    Disk space total: 47G

    Disk space available: 31G

    Your system must have 7 or more Gigabytes of physical memory installed.

    Exiting now.

比如ubuntu平臺就修改./scripts/eosio_build_ubuntu.sh文件,將下面的7000修改即可

 5.mac環境安裝報錯

  參考知乎文章

https://zhuanlan.zhihu.com/p/36090355

export LLVM_DIR=/usr/local/Cellar/llvm/4.0.1/lib/cmake

brew unlink gettext&& brew link –force gettext

數據目錄

錢包數據目錄

 

   刪除文件即可刪除對應錢包

~/eosio-wallet/xxx

節點鏈數據目錄

 

ubuntu:

     ~/.local/share/eosio/

Mac:

    ~/Library/Application\ Support/eosio/

    刪掉nodeos,刪除這個目錄,重啓nodeos即可重置賬號,智能合約等各種數據

eosiocpp智能合約編譯工具找不到

這是因爲你沒有調用install安裝工具

cd $EOS_SOURCE/build

sudo make install

超級節點,普通節點,主鏈,私有鏈

超級節點:DPOS協議的21+1個代表節點,目前初始的超級節點正在競選中,理論上超級節點後續會動態變化,但是”虹吸效應”告訴我們強者愈強,弱則愈弱,估計短期變化可能性不大

普通節點:負責投票,獲取區塊信息,發送交易,提交應用

主鏈:  2018年6月上線

私有鏈: 本地搭建的鏈,自己玩EOS,應用開發測試環境

智能合約開發工具

1) vim, vscode編寫c++智能合約代碼,然後通過eosiocpp工具編譯生成.wast, .abi文件然後部署,適合中小項目

2) 參考EOS_SOURCE_DIR/contracts/eosio.bios智能合約在EOS_SOURCE_DIR/contracts新增一個合約目錄xxx,使用CMake編譯,然後在EOS_SOURCE_DIR目錄下執行./eosio_build.sh,然後在EOS_SOURCE_DIR/build/contracts/xx會生成.wast,.abi文件,然後部署。適合大項目

 

Programs & Tools

  • nodeos – server-side blockchain node component

  • cleos – command line interface to interact with the blockchain and to manage wallets

  • keosd – component that manages EOSIO wallets

cleos

啓動本地單節點區塊鏈

$ nodeos -e -p eosio –plugin eosio::chain_api_plugin –plugin eosio::history_api_plugin

plugin = eosio::chain_api_plugin// Enable Chain API

plugin = eosio::wallet_api_plugin// Enable Wallet API

 

啓動時出現的異常處理

std::exception::what: database dirty flag set

命令添加

–replay-blockchain

 

創建默認錢包

$ cleos wallet create

$ cleos wallet create -n ${wallet_name}

passowrd:

default:PW5KXcKrwMXuzBoZgvGvcxEhLhF7awYvqGn4jHogGFqKjv1Mou2VA

wallet_forrest:PW5J2FRGLsBpW5AqsGLZwQtQczjk1ydtgnjt5odKdFrBs8gda4FyP

wallet_test:PW5KUt2rSfb97vQgbS5fmnDhy7d8VukEK1Q8HRBsZY5A2y7dSkWoy

 

查詢錢包

$ cleos wallet list

Wallets:

[

  “wallet_forrest *”,

  “wallet_test *”

]

 

解鎖默認錢包

$ cleos wallet unlock –password PW5KXcKrwMXuzBoZgvGvcxEhLhF7awYvqGn4jHogGFqKjv1Mou2VA

$ cleos wallet unlock -n wallet_forrest –password PW5J2FRGLsBpW5AqsGLZwQtQczjk1ydtgnjt5odKdFrBs8gda4FyP

$ cleos wallet unlock

password:

 

鎖定默認錢包

$ cleos wallet lock

創建Key

$ cleos create key

查詢錢包keys

$ cleos wallet keys

Private key: 5J1MyitfFcj3MwZfBBHgDafWkixE3U1YTJ7dyDzbED9kZ51X8eg

Public key: EOS7zwPu8PWDdJMqBDGx2j4vDJ1i8dmCTR3eEe6AaWbHec1Mwrmrf

密鑰導入錢包

$ cleos wallet import 5J1MyitfFcj3MwZfBBHgDafWkixE3U1YTJ7dyDzbED9kZ51X8eg

創建賬戶

$ cleos create account eosio user EOS7zwPu8PWDdJMqBDGx2j4vDJ1i8dmCTR3eEe6AaWbHec1Mwrmrf EOS7zwPu8PWDdJMqBDGx2j4vDJ1i8dmCTR3eEe6AaWbHec1Mwrmrf

注:create account子命令需要兩個公鑰,一個用於OwnerKey,另一個用於ActiveKey

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章