Brownie
如何在 RASPBERRY PI 4B 上使用 Brownie 編譯智能合約?
npm
我已經使用、nodejs
、ganache-cli
、eth-brownie
(直接從 github 下載)和 VS 程式碼設置了 Raspberry Pi 。我能夠執行
brownie
命令-它起作用了。我能夠做到brownie init
——它奏效了。我之前在我的 Mac 上設置了 Brownie 並跟隨 Patrick 的影片 - 我能夠編寫我的簡單智能合約,編譯它,部署它並與之互動!但是,執行
brownie compile
或brownie console
程序開始執行並列印:Downloading from solc-bin.ethereum.org/linux-amd64/…
然後最終命中:
Download binary would not execute, or returned unexpected output. SolcInstallationError: Download binary would not execute, or returned unexpected output. If this issue persists, you can try to compile from source code using 'solcx.compile_solc('0.8.6')'
Downloading from solc-bin.ethereum.org/linux-amd64/…
查看輸出,您可以看到
brownie
正在嘗試amd64
安裝solc
. 問題是您試圖在 ARM 機器(Raspberry Pis、M1 Mac 和其他小型設備上的那些)上執行 amd64(上一代 Mac 和現代 PC 上流行的)二進製文件。這些是不同的處理器架構,它們並不總是交叉兼容的。我在網上找不到任何 ARM 建構,但您可以嘗試使用文件中的本指南從原始碼建構solidity(但這在 Raspberry Pi 上可能不可行)。
如果您想在 Raspberry Pi 上使用 solc,請執行以下操作
sudo apt update sudo apt install snapd
然後重啟樹莓,然後
sudo snap install core sudo snap install solc
再次重新啟動,瞧,完成!
將安裝的 solc 版本是0.5.2