PyCharm安装sawtooth-sdk包失败及导入报错问题求助
先把你遇到的报错信息整理出来(看起来是安装过程中包下载中断或依赖处理异常):
Collecting sawtooth-sdk1.0.1
Using cached sawtooth-sdk-1.0.1.tar.gz
Requirement already satisfied: colorlog in /home/user/PycharmProjects/test/venv/lib/python3.6/site-packages (from sawtooth-sdk1.0.1)
Collecting sawtooth-signing (from sawtooth-sdk1.0.1)
Using cached sawtooth-signing-1.0.1.tar.gz
Collecting protobuf (from sawtooth-sdk1.0.1)
Using cached protobuf-3.5.2.post1-cp36-cp36m-manylinux1_x86_64.w...
我之前在Python3.6环境下装这个旧版本的Sawtooth SDK也踩过坑,给你几个靠谱的解决步骤:
先升级虚拟环境的pip:旧版本的pip经常会在处理包依赖或下载时出问题,先执行这条命令更新:
pip install --upgrade pip手动分步安装依赖包:Sawtooth SDK 1.0.1对依赖版本要求很严格,尤其是
protobuf和sawtooth-signing,我们先单独装这些依赖,再装SDK:- 安装指定版本的protobuf:
pip install protobuf==3.5.2.post1 - 安装对应版本的sawtooth-signing:
pip install sawtooth-signing==1.0.1 - 最后安装sawtooth-sdk:
pip install sawtooth-sdk==1.0.1
- 安装指定版本的protobuf:
换用国内PyPI镜像源:如果是网络问题导致包下载不完整,试试用清华镜像源加速安装,命令如下:
pip install sawtooth-sdk==1.0.1 -i https://pypi.tuna.tsinghua.edu.cn/simple
另外提一句,sawtooth-sdk 1.0.1是比较老旧的版本了,如果你后续有版本兼容的需求,也可以考虑升级到更新的SDK版本,但如果是项目要求必须用1.0.1,上面的方法应该能解决你的问题。
内容的提问来源于stack exchange,提问作者Cheetara

