If you just want to try Solidity for small contracts, you can try browser-solidity which does not need any installation. If you want to use it without connection to the Internet, you can also just save the page locally or clone http://github.com/ethereum/browser-solidity.
npm / Node.js¶
This is probably the most portable and most convenient way to install Solidity locally.
To install it, simply use
npm install solc
Details about the usage of the Node.js package can be found in the solc-js repository.
Binary packages of Solidity together with its IDE Mix are available through the C++ bundle of Ethereum.
Building from Source¶
Building Solidity is quite similar on MacOS X, Ubuntu and probably other Unices. This guide starts explaining how to install the dependencies for each platform and then shows how to build Solidity itself.
- OS X Yosemite (10.10.5)
Set up Homebrew:
brew update brew upgrade brew install boost --c++11 # this takes a while brew install cmake cryptopp gmp
Ubuntu Trusty (14.04)¶
Below are the instructions to install the minimal dependencies required to compile Solidity on Ubuntu 14.04 (Trusty Tahr).
sudo apt-get -y install build-essential git cmake libgmp-dev libboost-all-dev \ libjsoncpp-dev 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 # this will update cmake to version 3.x sudo apt-get -y install libcryptopp-dev libjsoncpp-dev
Ubuntu Xenial (16.04)¶
Below are the instructions to install the minimal dependencies required to compile Solidity on Ubuntu 16.04 (Xenial Xerus).
One of the dependencies (Crypto++ Library, with version >= 5.6.2) can be
installed either by adding the Ethereum PPA (Option 1) or by backporting
libcrypto++ from Ubuntu Development to Ubuntu Xenial (Option 2).
sudo apt-get -y install build-essential git cmake libgmp-dev libboost-all-dev \ libjsoncpp-dev # (Option 1) For those willing to add the Ethereum PPA: 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 sudo apt-get -y install libcryptopp-dev ## (Option 2) For those willing to backport libcrypto++: #sudo apt-get -y install ubuntu-dev-tools #sudo pbuilder create #mkdir ubuntu #cd ubuntu #backportpackage --workdir=. --build --dont-sign libcrypto++ #sudo dpkg -i buildresult/libcrypto++6_*.deb buildresult/libcrypto++-dev_*.deb #cd ..
Run this if you plan on installing Solidity only:
git clone --recursive https://github.com/ethereum/solidity.git cd solidity mkdir build cd build cmake .. && make
If you want to help developing Solidity, you should fork Solidity and add your personal fork as a second remote:
cd solidity git remote add personal email@example.com:username/solidity.git