Ubuntu18.04系統(tǒng)下構(gòu)建初(True)鏈基礎(chǔ)環(huán)境

本文將基于前文Windows操作系統(tǒng)用VMware 虛擬機(jī)安裝Ubuntu系統(tǒng)的基礎(chǔ)上洋机,?詳細(xì)描述包括GO語(yǔ)言配置俭正,VSCODE的IDE安裝配置晚伙,以及初幣環(huán)境的環(huán)境搭建


1.GO 語(yǔ)言的安裝與配置

1.1.所需工具

1.Git

2.Go => version 1.7 或更高版本

3.編譯工具

1.2. Git 的安裝

首先豪硅,檢查系統(tǒng)是否以經(jīng)安裝了git

$ git --version

當(dāng)出現(xiàn)類(lèi)似上圖時(shí)值桩,表示系統(tǒng)未安裝git

由于對(duì)Git的版本要求不高羡疗,所以直接使用包管理工具安裝

$ sudo apt-get install git

最后染服,安裝完成后,檢查是否安裝成功

$ git --version

當(dāng)出現(xiàn)類(lèi)似上圖時(shí)叨恨,表示系統(tǒng)安裝git成功



1.3.GO安裝

1.首先柳刮,同樣是檢查是否已經(jīng)安裝了go

$ go version

2.包管理工具安裝

$ sudo apt-get install golang-go

3.設(shè)置環(huán)境變量:

1) 先創(chuàng)建GOPATH文件夾

$ cd ~

$ mkdir go

$ cd go

$ mkdir bin pkg src

2) 在點(diǎn)擊打開(kāi)Files 在彈出的Files中打開(kāi) Home文件夾,然后選中Show Hidden Files 查看隱藏的文件特碳,找到 .profile文件

3) 在$HOME/.profile 文件的最后添加下邊的命令

export GOPATH=$HOME/go

export PATH=$PATH:/usr/local/go/bin:$GOPATH/bin


4) 然后運(yùn)行以下命令使之生效 ??

$ source $HOME/.profile

再使用go version即可查看是否安裝成功诚亚。

5) 測(cè)試是否安裝成功

? ? a) ?執(zhí)行命令-> ?$ cd go/src

????b) ?創(chuàng)建hello文件夾,執(zhí)行命令-> $ mkdir Hello?

? ? c) ?創(chuàng)建Hello.go 文件夾午乓,執(zhí)行命令-> $ touch Hello.go?

? ? d)將如下代碼寫(xiě)入$HOME/go/src/hello/hello.go

? ??????????package main????

????????????import "fmt"

????????????func main() {

????????????fmt.Printf("hello, world\n")

????????????}


? ? e)然后編譯運(yùn)行:

????$ cd $HOME/go/src/Hello

????$ go build

????$ ./Hello // 輸出:hello,world



1.4 安裝編譯環(huán)境

執(zhí)行命令

$ sudo apt-get install build-essential

2.VSCODE的安裝與配置


2.1.準(zhǔn)備工作

先安裝一些工具

$ sudo apt-get install cmake

$ sudo apt-get install python-dev python3-dev



2.2.VSCode 安裝

1)下載安裝包站宗,下載地址https://code.visualstudio.com/在Linux下打開(kāi)該頁(yè)面會(huì)直接顯示Linux安裝包的下載頁(yè)面。如下圖:

因?yàn)槭荱buntu系統(tǒng)益愈,所以下載.deb文件梢灭,下載的文件名為“code_1.26.1-1534444688_amd64.deb”(不同版本可能會(huì)有不同)夷家。下邊開(kāi)始安裝:

$ cd path/to/deb_file // 進(jìn)入deb文件所在目錄

$ sudo dpkg -i code_1.26.1-1534444688_amd64.deb // 開(kāi)始安裝

2)安裝成功如下圖:

3)按 “Win” 鍵,在所有程序里邊搜索 “vscode” 就可以找到他了




2.3 VSCODE 擴(kuò)展安裝包安裝

1)在擴(kuò)展欄里搜索“chinese”敏释,第一個(gè)就是中文包库快,需要的可以安裝。安裝完成后重啟軟件即可钥顽。?

2)搜“Go”义屏,安裝Go的擴(kuò)展。

然后VSCode的安裝就完成了蜂大。



3.初幣代碼下載

基于筆者在最初下載安裝VSCODE查看代碼闽铐,遇到過(guò)的問(wèn)題,發(fā)現(xiàn)多數(shù)文件都是存放在 github.com文件夾中的情況奶浦,

為少走彎路在下載代碼時(shí)需要也要相應(yīng)下載到對(duì)應(yīng)的github.com的目錄下兄墅。

1.創(chuàng)建相關(guān)路徑的文件夾,執(zhí)行命令

$ cd $GOPATH/src/

$ mkdir github.com

2.進(jìn)入相應(yīng)文件夾路徑澳叉,下載代碼

$ cd?$GOPATH/src/github.com

$ git clone https://github.com/truechain/truechain-engineering-code.git

3.使用VSCode打開(kāi)truechain-engineering-code所在文件夾隙咸。

VSCODE打開(kāi)文件夾



4.VSCODE的依賴(lài)包安裝與配置

VSCODE中安裝GO的依賴(lài)包,因這些依賴(lài)包不是初幣項(xiàng)目的實(shí)際項(xiàng)目需要的依賴(lài)包成洗。所以不會(huì)影響運(yùn)行源碼五督。這些包應(yīng)該是裝Go擴(kuò)展的時(shí)候統(tǒng)一裝的,并不是項(xiàng)目需要泌枪。

因?yàn)閲?guó)內(nèi)的網(wǎng)絡(luò)屏蔽概荷,在GO官網(wǎng)的golang.org無(wú)法連接上,安裝依賴(lài)包不能成功碌燕,如下圖:?

為解決此問(wèn)題误证,可到github下載go tools 和 golint 的源碼到本地目錄,用go install 命令安裝即可


1修壕、在%GOPATH%\src\ 目錄下愈捅,建立golang.org 文件夾,并再新建x文件夾慈鸠。 目錄為 "%GOPATH\src\golang.org\x\"


2蓝谨、完成目錄切換后,開(kāi)始下載插件包:git clone https://github.com/golang/tools.git tools

3青团、執(zhí)行完以后譬巫,會(huì)多一個(gè)tools文件夾。


4督笆、打開(kāi)vsCode終端芦昔,切換到 終端,進(jìn)入“%GOPATH”目錄,執(zhí)行

????go install github.com/ramya-rao-a/go-outline

????go install github.com/acroca/go-symbols

????go install golang.org/x/tools/cmd/guru

????go install golang.org/x/tools/cmd/gorename

????go install github.com/josharian/impl

????go install github.com/rogpeppe/godef

????go install github.com/sqs/goreturns

????go install github.com/golang/lint/golint

????go install github.com/cweill/gotests/gotests

????go install github.com/ramya-rao-a/go-outline

????go install github.com/acroca/go-symbols

????go install golang.org/x/tools/cmd/guru

????go install golang.org/x/tools/cmd/gorename

????go install github.com/josharian/impl

????go install github.com/rogpeppe/godef

????go install github.com/sqs/goreturns

????go install github.com/cweill/gotests/gotests




5.編譯TrueChain娃肿。


1.在VSCODE中打開(kāi)“調(diào)試->打開(kāi)配置”就打開(kāi)了“l(fā)anuch.json”文件 修改參數(shù):

{

? ? // 使用 IntelliSense 了解相關(guān)屬性咕缎。

? ? // 懸停以查看現(xiàn)有屬性的描述珠十。

? ? // 欲了解更多信息,請(qǐng)?jiān)L問(wèn): https://go.microsoft.com/fwlink/?linkid=830387

? ? "version": "0.2.0",

? ? "configurations": [

? ? ? ? {

? ? ? ? ? ? "name": "Launch",

? ? ? ? ? ? "type": "go",

? ? ? ? ? ? "request": "launch",

? ? ? ? ? ? "mode": "auto",

? ? ? ? ? ? "remotePath": "",

? ? ? ? ? ? "port": 2345,

? ? ? ? ? ? "host": "127.0.0.1",

? ? ? ? ? ? "program": "${fileDirname}",

? ? ? ? ? ? "env": {},

? ? ? ? ? ? "args": ["init", "./genesis.json"], // 主要修改這里

? ? ? ? ? ? "showLog": false

? ? ? ? }

? ? ]

}


2.按照README里的凭豪,寫(xiě)一個(gè)genesis.json文件焙蹭,然后第二個(gè)參數(shù)把路徑指向這個(gè)文件也可以:?

{

? "config": {

? ? "chainId": 10,

? ? "homesteadBlock": 0,

? ? "eip155Block": 0,

? ? "eip158Block": 0

? },

? "alloc":{

? ? "0xbd54a6c8298a70e9636d0555a77ffa412abdd71a" : { "balance" : 90000000000000000000000},

? ? "0x3c2e0a65a023465090aaedaa6ed2975aec9ef7f9" : { "balance" : 10000000000000000000000}

? },

? "committee":[

? ? {

? ? ? "address": "0x76ea2f3a002431fede1141b660dbb75c26ba6d97",

? ? ? "publickey": "0x04044308742b61976de7344edb8662d6d10be1c477dd46e8e4c433c1288442a79183480894107299ff7b0706490f1fb9c9b7c9e62ae62d57bd84a1e469460d8ac1"

? ? }

? ]

,

? "coinbase"? : "0x0000000000000000000000000000000000000000",

? "difficulty" : "0x100",

? "extraData"? : "",

? "gasLimit"? : "0x2fefd8",

? "nonce"? ? ? : "0x0000000000000042",

? "mixhash"? ? : "0x0000000000000000000000000000000000000000000000000000000000000000",

? "parentHash" : "0x0000000000000000000000000000000000000000000000000000000000000000",

? "timestamp"? : "0x00"

}


3.然后,在“cmd/getrue/main.go”上F5就可以初始化了嫂伞。初始化成功如下圖:



4.繼續(xù)修改“l(fā)anuch.json”的“args”參數(shù)為

"args": ["--nodiscover", "--singlenode", "--mine", "--etherbase", "0x8a45d70f096d3581866ed27a5017a4eeec0db2a1", "--bftkeyhex", "c1581e25937d9ab91421a3e1a2667c85b0397c75a195e643109938e987acecfc", "--bftip", "192.168.68.43", "--bftport", "10080"],

5.再F5就可以挖礦了孔厉。運(yùn)行成功如下圖,有時(shí)候可能不太一樣:?




常見(jiàn)問(wèn)題

報(bào)錯(cuò):

Fatal: Failed to write fast genesis block: database already contains an incompatible genesis block (have 1acaa8c23f22e0ae, new bc72c21faf0bc5b9)


你肯定是在配置“l(fā)anuch.json”的“args”參數(shù)之前末早,按下了F5烟馅,執(zhí)行以下命令即可:

$ rm -rf ~/.truechain/

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市然磷,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌刊驴,老刑警劉巖姿搜,帶你破解...
    沈念sama閱讀 211,743評(píng)論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異捆憎,居然都是意外死亡舅柜,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,296評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門(mén)躲惰,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)致份,“玉大人,你說(shuō)我怎么就攤上這事础拨〉椋” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 157,285評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵诡宗,是天一觀的道長(zhǎng)滔蝉。 經(jīng)常有香客問(wèn)我,道長(zhǎng)塔沃,這世上最難降的妖魔是什么蝠引? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 56,485評(píng)論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮蛀柴,結(jié)果婚禮上螃概,老公的妹妹穿的比我還像新娘。我一直安慰自己鸽疾,他們只是感情好吊洼,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,581評(píng)論 6 386
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著肮韧,像睡著了一般融蹂。 火紅的嫁衣襯著肌膚如雪旺订。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 49,821評(píng)論 1 290
  • 那天超燃,我揣著相機(jī)與錄音区拳,去河邊找鬼。 笑死意乓,一個(gè)胖子當(dāng)著我的面吹牛樱调,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播届良,決...
    沈念sama閱讀 38,960評(píng)論 3 408
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼笆凌,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了士葫?” 一聲冷哼從身側(cè)響起乞而,我...
    開(kāi)封第一講書(shū)人閱讀 37,719評(píng)論 0 266
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎慢显,沒(méi)想到半個(gè)月后爪模,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,186評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡荚藻,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,516評(píng)論 2 327
  • 正文 我和宋清朗相戀三年屋灌,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片应狱。...
    茶點(diǎn)故事閱讀 38,650評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡共郭,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出疾呻,到底是詐尸還是另有隱情除嘹,我是刑警寧澤,帶...
    沈念sama閱讀 34,329評(píng)論 4 330
  • 正文 年R本政府宣布罐韩,位于F島的核電站憾赁,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏散吵。R本人自食惡果不足惜龙考,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,936評(píng)論 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望矾睦。 院中可真熱鬧晦款,春花似錦、人聲如沸枚冗。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,757評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)赁温。三九已至坛怪,卻和暖如春淤齐,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背袜匿。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,991評(píng)論 1 266
  • 我被黑心中介騙來(lái)泰國(guó)打工更啄, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人居灯。 一個(gè)月前我還...
    沈念sama閱讀 46,370評(píng)論 2 360
  • 正文 我出身青樓祭务,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親怪嫌。 傳聞我的和親對(duì)象是個(gè)殘疾皇子义锥,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,527評(píng)論 2 349

推薦閱讀更多精彩內(nèi)容

  • Go環(huán)境搭建 去官網(wǎng)下載Go,直接下載msi文件點(diǎn)擊安裝即可 環(huán)境配置:主要包括GoRoot GoPath GoB...
    蓋小同學(xué)閱讀 7,582評(píng)論 0 10
  • 1. 分布式系統(tǒng)核心問(wèn)題 參考書(shū)籍:《區(qū)塊鏈原理岩灭、設(shè)計(jì)與應(yīng)用》 一致性問(wèn)題例子:兩個(gè)不同的電影院買(mǎi)同一種電影票拌倍,如...
    molscar閱讀 907評(píng)論 0 0
  • 申金鑫 17101223365 轉(zhuǎn)載自公眾號(hào)flysnow_org 【嵌牛導(dǎo)讀】:本文介紹了各種系統(tǒng)下的Go語(yǔ)言環(huán)...
    Felixxin閱讀 3,376評(píng)論 0 20
  • windows下 golang 安裝與配置請(qǐng)參照:http://www.reibang.com/p/b6f34ae...
    molscar閱讀 2,117評(píng)論 0 7
  • 溪流贰拿。 清澈。清澈得仿佛讓我看見(jiàn)…… 洞察的故事熄云。 凄清。 像婉轉(zhuǎn)的音樂(lè)妙真。 不見(jiàn)歸來(lái)缴允。 雪花是海悄悄放走的女兒 歸...
    一簾清菏閱讀 156評(píng)論 0 2