Mac geth中不能编译Solidity代码解决方案

Posted 乞力马扎罗的雪CYF

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mac geth中不能编译Solidity代码解决方案相关的知识,希望对你有一定的参考价值。

在Mac上安装完以太坊环境、geth客户端、solc编译器后,可能无法在geth客户端中使用solc编译器,解决方案如下。

以下是安装以太坊环境的命令:

brew update

brew upgrade

brew tap ethereum/ethereum

brew install solidity

brew linkapps solidity

但是在执行完最后一个brew linkapps solidity后,没有任何的返回。

在执行完brew install solidity后提示使用”brew link solidity“进行链接。然后执行brew link solidity.需要强制链接并重写,执行命令如下:

brew link --overwrite solidity

然后在geth中就可以找到solc编译器了。

eth.getCompilers()

或者

web3.eth.getCompilers()

就可以返回编译器名称了。注意要查看错误日志。

下面可能也是解决方案:

通过which solc查看路径;

admin.setSolc(“/usr/local/bin/solc")

 

以上是关于Mac geth中不能编译Solidity代码解决方案的主要内容,如果未能解决你的问题,请参考以下文章

Solidity实现智能合约

编译geth报错的解决方法 make: *** [geth] 错误 1

如何使用GETH获取合约地址对应的ABI?

solidity(solc)智能合约升级到0.5*遇到的问题

Remix使用教程,新版 remix 使用教程

Solidity 编译器在代码中抛出 DeclarationError