关于python使用py-solc的问题

项目的需求需要使用py-solc编译智能合约,但是在使用过程中遇到了一个问题,在查询所有博客之后发现没有什么博客写的能让人看懂的,所以我就记录一下解决过程。

1.安装py-solc: pip install py-solc

2.简单的使用:

from solc import compile_source, compile_files, link_code
print(compile_source("contract Foo { function Foo() {} }"))

如果直接装完 py-solc之后执行这段代码会出现这样的报错:
关于python使用py-solc的问题_第1张图片

出现这样的错误原因是: 你的电脑里没有solidity的环境,所以需要安装一下这个环境
1.Ubuntu环境(来自转载,没有亲测):

sudo add-apt-repository ppa:ethereum/ethereum
sudo apt-get update
sudo apt-get install solc

2.windows环境(亲测有效):
这是文档的地址:https://www.codeooze.com/blockchain/solc-hello-world/
按照文档中的说明下载win的压缩文件并解压缩之后文件夹目录如下:
关于python使用py-solc的问题_第2张图片

然后你需要做一下两点:

1.将solc添加至电脑的环境变量;
2.在项目中使用时,将solc.exe文件拷贝粘贴至项目所在文件夹目录;
3.以上完成之后再执行 python代码效果如下:
关于python使用py-solc的问题_第3张图片
如果在编译智能合约代码后是这样的说明可以完成编译,然后就可以愉快的部署智能合约了。

你可能感兴趣的:(python)