一直很看好比原, 也想著學(xué)習(xí)一下它的代碼线罕,所以有了這篇實(shí)踐的文章止潮。比原的開(kāi)發(fā)社區(qū)不是很積極,很少在CSDN等技術(shù)博客上看見(jiàn)入門的技術(shù)文章钞楼,希望官方能加強(qiáng)開(kāi)發(fā)社區(qū)的力量喇闸。
比原鏈項(xiàng)目地址:https://github.com/Bytom/bytom
準(zhǔn)備工作:
1 ) 安裝Homebrew
安裝命令:
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
2 )使用brew安裝go
1、安裝命令:
brew install go
3 )配置go路徑環(huán)境
主要是GOROOT和GOPATH
GOROOT:就是go的安裝環(huán)境
GOPATH:作為編譯后二進(jìn)制的存放目的地和import包時(shí)的搜索路徑询件。其實(shí)說(shuō)通俗點(diǎn)就是你的go項(xiàng)目工作目錄燃乍。通常情況下GOPATH包含三個(gè)目錄:bin、pkg宛琅、src刻蟹。
src目錄下主要存放go的源文件
pkg目錄存放編譯好的庫(kù)文件,主要是*.a文件;
bin目錄主要存放可執(zhí)行文件
- 獲取bytom源代碼
// 把代碼clone到本地
$ git clone https://github.com/Bytom/bytom.git $ GOPATH /src/github.com/bytom
- 構(gòu)建源代碼
$ cd $GOPATH/src/github.com/bytom
$ make bytomd # build bytomd
$ make bytomcli # build bytomcli
- 成功構(gòu)建項(xiàng)目時(shí)嘿辟,bytom和bytomcli二進(jìn)制文件應(yīng)分別存在于cmd/bytomd和cmd/bytomcli目錄中舆瘪。
Bytom項(xiàng)目附帶了cmd目錄中的幾個(gè)可執(zhí)行文件片效。
bytomd : bytomd命令可以幫助通過(guò)自定義參數(shù)初始化和啟動(dòng)bytom域。bytomd --help用于命令行選項(xiàng)英古。
bytomcli : 主要Bytom CLI客戶端淀衣。它是進(jìn)入Bytom網(wǎng)絡(luò)(主網(wǎng)絡(luò),測(cè)試網(wǎng)絡(luò)或?qū)S镁W(wǎng)絡(luò))的入口點(diǎn)召调,能夠作為完整節(jié)點(diǎn)存檔節(jié)點(diǎn)運(yùn)行(保留所有歷史狀態(tài))膨桥。它可以被其他進(jìn)程用作通過(guò)HTTP,WebSocket和/或IPC傳輸之上公開(kāi)的JSON RPC端點(diǎn)進(jìn)入Bytom網(wǎng)絡(luò)的網(wǎng)關(guān)唠叛。`bytomcli --help`和命令行選項(xiàng)的[bytomcli Wiki頁(yè)面](https://github.com/Bytom/bytom/wiki/Command-Line-Options)
7)運(yùn)行bytom
$ cd ./cmd/bytomd
$ ./bytomd init --chain_id mainnet
chain_id :有三種選擇
mainnet:連接到主網(wǎng)只嚣。
testnet:連接到testnet智慧。
solonet:獨(dú)立模式艺沼。
之后册舞,您將看到config.toml生成,然后啟動(dòng)節(jié)點(diǎn)澳厢。
8)啟動(dòng)
$ ./bytomd node