區塊鏈學習-Golang 與智慧合約的互動(一)

joytoy發表於2021-09-09

v

但是這些文章年代久遠....存在讓你崩潰的問題。
abigen 內部其實是呼叫了 solc 來對合約檔案進行編譯生成對應語言版本的程式碼檔案,按照教程正常來說只需要這樣一行指令就能搞定

abigen --sol yourContract.sol --pkg main --out yourContract.go

但是目前版本直接對合約檔案執行以上指令會返回這樣的一行錯誤

Failed to build Solidity contract: exit status 7

無法定位實際問題點,網上也沒搜到對應的問題討論
最後透過自己的摸索發現可以這樣來操作

先透過 solc 的新指令 solcjs (直接 npm install -g solc 下載後的指令,solc 的指令需要 npm install -g solc-cli)生成對應的 bin abi 合約檔案

// 生成合約 abi 檔案solcjs yourContract.sol -o filedir --abi// 生成合約 bin 檔案solcjs yourContract.sol -o filedir --bin

最後使用以太坊的 abigen 生成對應的 go 檔案

abigen --abi filedir/yourContract.abi --bin filedir/yourContract.bin --pkg main --out



作者:iSakura
連結:


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/4650/viewspace-2817454/,如需轉載,請註明出處,否則將追究法律責任。

相關文章