Brownie

如何在 RASPBERRY PI 4B 上使用 Brownie 編譯智能合約?

  • February 25, 2022

npm我已經使用、nodejsganache-clieth-brownie(直接從 github 下載)和 VS 程式碼設置了 Raspberry Pi 。

我能夠執行brownie命令-它起作用了。我能夠做到brownie init——它奏效了。我之前在我的 Mac 上設置了 Brownie 並跟隨 Patrick 的影片 - 我能夠編寫我的簡單智能合約,編譯它,部署它並與之互動!

但是,執行brownie compilebrownie 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

引用自:https://ethereum.stackexchange.com/questions/102866