Pyethereum
pyethapp ImportError:無法導入名稱塊
我
pyethapp
使用pip install -c constraints.txt pyethapp
. 該constraints.txt
文件有一行pyelliptic==1.5.7
,,以防止此執行緒中提到的安裝錯誤。安裝成功,但是執行時pyethapp
出現以下錯誤:File "/home/ubuntu/pyethapp/pyeth-venv/bin/pyethapp", line 7, in <module> from pyethapp.app import app File "/home/ubuntu/pyethapp/pyeth-venv/local/lib/python2.7/site-packages/pyethapp/app.py", line 2, in <module> from ethereum import blocks ImportError: cannot import name blocks
我去尋找
blocks
模組python2.7/site-packages/ethereum
並找到文件block.py
。看起來好像模組已重命名,或者pyethapp
是為不同版本的pyethereum
.我正在安裝的版本(預設)是:
ethereum==2.0.4 pyethapp==1.5.0
這些版本不兼容嗎?我可以通過安裝不同的版本來修復錯誤嗎?是否有另一種方法來修復錯誤(通過修改原始碼)?
為了在 Ubuntu 17 上的 virtualenv 中獲得一個工作版本,我首先做了(根據上面的@audiomason 建議 - 我沒有嘗試過沒有這一步):
pip install ethereum==1.6.0 pyethapp==1.2.0
然後(修復此問題)
pip install pyelliptic==1.5.7
然後(修復此問題)
pip install tinyrpc[websocket]
然後它可以工作:-)
此命令將安裝功能性 pyethapp:
pip install ethereum==1.6.0 pyethapp==1.2.0