如果你想测试一段简单的Solidity合约,你不需要安装任何东西,只要访问基于浏览器的Solidity就可以:https://chriseth.github.io/browser-solidity/
通过NPM / node.js命令在线安装
如何使用nodejs包的详细信息可以在代码库中找到:https://github.com/chriseth/browser-solidity#nodejs-usage%E3%80%82
二进制安装包
包括Mix IDE的二进制Solidity安装包在Ethereum网站C++ bundle中下载:https://github.com/ethereum/webthree-umbrella/releases%E3%80%82
从源码构建
在MacOS X、Ubuntu和其它类Unix系统中编译安装Solidity非常相似。这个指南开始讲解如何在每个平台下安装相关的依赖软件,然后构建Solidity。
MacOS X
系统需求:
安装Homebrew:
1
2
3
4
5
6
|
brew update
brew install boost --c++11 # 需要等待一段时间
brew install cmake cryptopp miniupnpc leveldb gmp libmicrohttpd libjson-rpc-cpp # 仅仅安装Mix IDE和Alethzero
brew install xz d-bus
brew install llvm --HEAD --with-clang
brew install qt5 --with-d-bus # 避免长时间的等待没有提示,可以添加 —verbose 输出信息。
|
安装:xcode
Ubuntu系统
Ubuntu系统下面是在最新版Ubuntu系统上编译安装Solidity的指南。最佳的支持平台是2014年11月发布的64位Ubuntu 14.04
安装依赖软件:在你从源码编译之前,你需要准备一些工具和依赖软件。 首先,升级你的代码库。Ubuntu主代码库不提供所有的包,你需要从Ethereum PPA和LLVM获取。 注意
Ubuntu 14.04的用户需要使用:
1
|
sudo apt-add-repository ppa:george-edison55/cmake-3.x
|
获取最新版本的cmake。
现在加入其它的包:
1
2
3
4
5
6
7
8
|
sudo apt-get -y update
sudo apt-get -y install language-pack-en-base
sudo dpkg-reconfigure locales
sudo apt-get -y install software-properties-common
sudo add-apt-repository -y ppa:ethereum/ethereum
sudo add-apt-repository -y ppa:ethereum/ethereum-dev
sudo apt-get -y update
sudo apt-get -y upgrade
|
对于Ubbuntu 15.04(Vivid Vervet)或者更老版本,使用下面的命令获取开发相关的包:
1
|
sudo apt-get -y install build-essential git cmake libboost-all-dev libgmp-dev libleveldb-dev libminiupnpc-dev libreadline-dev libncurses5-dev libcurl4-openssl-dev libcryptopp-dev libjson-rpc-cpp-dev libmicrohttpd-dev libjsoncpp-dev libedit-dev libz-dev
|
对于Ubbuntu 15.10(Wily Werewolf)或者更新版本,使用下面的命令获取开发相关的包:
1
|
sudo apt-get -y install build-essential git cmake libboost-all-dev libgmp-dev libleveldb-dev libminiupnpc-dev libreadline-dev libncurses5-dev libcurl4-openssl-dev libcryptopp-dev libjsonrpccpp-dev libmicrohttpd-dev libjsoncpp-dev libedit-dev libz-dev
|
不同版本使用不同获取命令的原因是,libjsonrpccpp-dev已经在15.10以后的Ubuntu的通用代码仓库中。
编译
如果你只准备安装solidity,忽略末尾Alethzero和Mix的错误。
1
2
3
4
5
|
git clone --recursive https://github.com/ethereum/webthree-umbrella.git
cd webthree-umbrella
./webthree-helpers/scripts/ethupdate.sh --no-push --simple-pull --project solidity # 更新Solidity库
./webthree-helpers/scripts/ethbuild.sh --no-git --project solidity --all --cores 4 -DEVMJIT=0 # 编译Solidity及其它
# 在OS X系统加上DEVMJIT将不能编译,在Linux系统上则没问题
|
如果你选择安装Alethzero和Mix:
1
2
3
|
git clone --recursive https://github.com/ethereum/webthree-umbrella.git
cd webthree-umbrella && mkdir -p build && cd build
cmake ..
|
好了,正常的话所有安装完毕。