前言
為測試go-filecoin在ARM板上的性能以及表現(xiàn)豆村。需要編譯出可以在ARM板上面運(yùn)行的go-filecoin版本驯用。兩種方案脸秽,Linux上面交叉編譯或者直接在ARM板上面構(gòu)建編譯環(huán)境。最開始準(zhǔn)備嘗試Linux上面交叉編譯的蝴乔。問題比較多记餐,根據(jù)官放git上面的反饋也是推薦直接在ARM板上編譯。一下記錄了一些ARM編譯碰到到的一些問題薇正。
環(huán)境設(shè)備
1)ARM架構(gòu)aarch64 ARM_v8
- 下載golang的對應(yīng)的arm版本
3)其余按照官網(wǎng)要求配置即可片酝,例如按照rust,clang挖腰,jq等等雕沿。
4)科學(xué)上網(wǎng)。
開始編譯
1)按照官網(wǎng)提示先安裝依賴猴仑。
go run ./build deps
期間異常終止很多次审轮,注意看下錯誤提示,只要不是什么命令沒找到,或者類型錯誤疾渣,就重新執(zhí)行一遍上面的命令篡诽,慢慢來。我這邊由于板子內(nèi)存只有2G經(jīng)常報錯invalid memory這個錯誤榴捡,直接忽略掉杈女,重新執(zhí)行上面的命令即可。
2)正式編譯
第一步的依賴安裝完畢之后薄疚,就可以進(jìn)行編譯了碧信。這一步里面這邊發(fā)生過類型錯誤,去github上查找原因街夭,發(fā)現(xiàn)是由于我的gcc版本過低導(dǎo)致砰碴,安裝clang然后修改環(huán)境變量cc=clang即可。
export cc=clang
3)運(yùn)行g(shù)o-filecoin
第二步編譯完成之后板丽,就可以運(yùn)行g(shù)o-filecoin命令了呈枉。等我daemon跑起來之后一直會有一個error說是處理異常。去github上查找原因埃碱,由于go-filecoin版本問題猖辫。例如你用版本的go-filecoin 去init用另一個版本的go-filecoin去跑daemon就會報這種錯。砚殿。啃憎。,另外需要注意的一點(diǎn)就是go-filecoin的版本最好與/tem/filecoin-proof...這個文件里面的版本對應(yīng)似炎。
總結(jié)
以上是我編譯運(yùn)行RAM的警用以及碰到的問題辛萍。