鹅厂之区块链-以太坊开发环境搭建

在开始学习每一种技术之前,最初的一项任务就是搭建各种开发环境,而区块链的开发环境是比较麻烦的。这里我们来完整的实现一下。以下操作均在mac下完成。

(1)安装python2.7,mac在终端中直接使用以下命令:

brew install python(注意python是小写)

(2)安装solc(solidity语言编译器),在终端中执行以下命令:

sudo npm install -g solc

同时需要安装solc-cli:

sudo npm install -g solc-cli

使用以下命令可以一并安装solc和solc-cli,推荐使用此命令安装:

sudo npm install -g solc solc-cli --save-dev

(3)安装ethereum/cpp-ethereum(以太坊客户端geth),按顺序执行以下命令:

brew update

brew upgrade

brew tap ethereum/ethereum

brew install cpp-ethereum

brew linkapps cpp-ethereum

或者是直接执行以下命令:

brew tap ethereum/ethereum

brew install ethereum

(4)安装testrpc(作为以太坊的本地测试环境,可以用来部署智能合约,方便调试开发)

pip install eth-testrpc

升级pip:

python -m pip install -upgrade pip 

安装完以后可能会出现异常...scrypt/index.js,参考:http://blog.csdn.net/wo541075754/article/details/53155578 这篇博客。

(5)安装node.js,直接从官网下载安装即可:

https://nodejs.org/en/

(6)安装truffle(truffle可以在本地快速的编译、部署智能合约)

npm install -g truffle

(7)提示:大家有可能会安装node的包管理工具nvm,nvm安装后需要在环境变量中配置如下,需要在.bash_profile中加入:

export NVM_DIR="~/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"  # This loads nvm 
(8)在安装完geth和solc后,发现在geth控制台中不能编译solidity,以下是解决方案:

网上建议执行的命令如下:

brew update
brew upgrade
brew tap ethereum/ethereum
brew install solidity
brew linkapps solidity 

但是在执行完最后一个brew linkapps solidity后,终端中没有任何的返回,其实表示最后一行命令是执行失败的。

我们在执行完brew install solidity后终端会提示使用"brew link solidity"进行链接,而不是网上说的使用“brew linkapps solidity”. 

所以执行brew link solidity.   终端提示需要强制链接并重写,然后再执行命令如下:

brew link --overwrite solidity

执行完以上步骤后,就可以在geth中就可以找到solc编译器了:

eth.getCompilers()

或者

web3.eth.getCompilers()

就可以返回编译器名称了。


下面的可能也是解决方案,大家可以尝试下:

通过which solc查看solc的安装路径,然后在geth控制台中输入:

admin.setSolc("solc的路径")

       执行完上面的步骤后,区块链开发的环境基本就搭建起来了。但是在安装过程中,还是会碰到很多的坑,比如说网络原因。笔者在执行以上的某几个命令时,一直失败,但是换了一个地方的网络后,安装非常的顺利。我在接下去的博客中会和大家分享如何使用上述的这些软件、以及区块链应用的开发、智能合约的编写等技术。

猜你喜欢

转载自blog.csdn.net/ULi_cloud/article/details/80658547