1. 程式人生 > >Hyperledger fabric 原始碼分析之環境準備

Hyperledger fabric 原始碼分析之環境準備

背景

從16年讀研確定方向為區塊鏈以後,實驗室的環境就是hyperledger,從版本0.6一路走過來到現在的1.4,也算是見證了hyperledger fabric的壯大和發展之路。但是那時候更多的是研究性質,瞭解的是fabric的整體架構和技術背後的理論知識,並沒有深入閱讀fabric的程式碼。

重新開始

正好目前也是在一家公司從事區塊鏈研發(方向為聯盟鏈),所以從長遠計和個人興趣愛好計,從今天起,開始研究fabric的原始碼,弄懂原理,看明白程式碼。

說明

  1. 分析的原始碼版本是fabric 目前最新的1.4版本,並且在未來很長時間都會基於這個版本做原始碼分析,0.6和1.0版本架構區別很大,但1.0以後整體變化並沒有多少,沒有必要為了追求最新版的程式碼天天換來換去。連結
    https://github.com/hyperledger/fabric
  2. 不定期更新,現在正處在要準備畢業階段,學業、實習工作很繁重,精力有限。
  3. 能力有限,原始碼分析不保證都是對的。哈哈,儘量不坑人、不坑隊友。

開始

使用的工具是IDEA,目前我使用的系統是Mac。

  1. 安裝golang
    使用homebrew一鍵安裝的,首先安裝homebrew,使用命令
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

然後安裝golang

brew install go

檢視是否安裝上個了golang

 go env

在這裡插入圖片描述
然後繼續配置golang環境
首先進入配置檔案

	vi ~/.bash_profile //進入配置檔案

然後修改檔案,仔細看檔案,不要直接copy
GOROOT: go安裝目錄
GOPATH:go工作目錄
GOBIN:go可執行檔案目錄
PATH:將go可執行檔案加入PATH中

##golang
export GOROOT=/usr/local/go
export GOPATH=/Users/xxx/Documents/macGolangEnv/GOPATH   ###gopath最好自己選擇個目錄
export GOBIN=$GOPATH/bin
export PATH=$PATH:$GOBIN

然後在編輯完之後,讓檔案生效

source ~/.bash_profile
  1. 安裝goland
    fabric是go語言,所以可以考慮使用jetbrains家族的IDEA或者是專門為go推出的goland軟體,我是用的goland,下載地址 http://www.jetbrains.com/go/ 。安裝參考IDEA,網上安裝文件一大批,就不多說了。

  2. 下載fabric 1.4版的原始碼
    goland–>check out from version control—>git—>URL處填寫 https://github.com/hyperledger/fabric.git 目前版本是fabric 1.4.也可以自己去下載1.4版的原始碼然後匯入,下載連結 https://github.com/hyperledger/fabric/releases
    在這裡插入圖片描述

改錯

這一步主要就是github原始碼匯入goland軟體之後,發現檔案中的import出現了各種報錯,主要原因是依賴的包沒有匯入。
基本思路就兩種:1、直接嘗試掛個vpn,在goland軟體上惦記如圖 go get -t *** 這種,不過這個時候有可能是下載不了的。2、手工方式去網上down下載然後放入golang本地倉庫裡。
一個一個排錯就好了。
在這裡插入圖片描述