Homebrew Tap for Ethereum
brew tap ethereum/ethereum
brew install ethereum
brew linkapps
brew install go-ethereum
open /Applications/AlethZero.app, eth (CLI), or neth (ncurses interface)
mist (GUI) or ethereum (CLI)
Get the latest development version with the --devel flag. Use --build-from-source if you don't want a pre-built bottle. Alternatively you can use the --successful flag (see important note below) or any other available options.
brew reinstall ethereum --devel
For the latest successful build on develop (last successful build from cpt-obvious):
brew reinstall ethereum --devel --successful
If you get an error looking like this:
==> Cloning https://github.com/ethereum/cpp-ethereum.git
Updating /Library/Caches/Homebrew/ethereum--git
fatal: reference is not a tree: <latest commit hash>
Error: Failed to download resource "ethereum"
Failure while executing: git checkout -q -f
Either try brew fetch ethereum --devel or simply delete the cache with rm -rf /Library/Caches/Homebrew/ethereum--git
brew reinstall eth-go go-ethereum --HEAD
Current branches (C++):
Go:
--develis on develop branch- normal install is on master branch
brew update && brew upgrade
brew update && brew reinstall ethereum
brew update && brew reinstall eth-go go-ethereum
List available versions with:
brew versions ethereum
If you have other versions installed, you can switch with:
brew switch ethereum <version>
Or follow this StackOverflow answer
These brews can be installed via the raw GitHub URLs, or by cloning this
repository locally with brew tap ethereum/ethereum.
##Options
See brew info ethereum or brew info go-ethereum for all options. --with-... features are experimental patches.
| Option | desc. |
|---|---|
--headless |
Headless |
--successful |
Last successful build using --devel only |
--with-debug |
Pass -DCMAKE_BUILD_TYPE=Debug |
--without-jsonrpc |
Build without libjson-rpc-cpp as dependency |
--without-paranoia |
Build with -DPARANOIA=0 |
brew info jsonrpc
| Option | desc. |
|---|---|
--allow-origin |
Add Access-Control-Allow-Origin: * in headers |
##Troubleshooting
- Use
--verboseto get more info while installing. - Make sure to update XCode and the command line tools.
- Run
brew updateandbrew upgrade - Fix what the
brew doctorsays. - Reinstall dependencies:
brew reinstall boost --c++11 --with-python - Make changes to
/usr/local/Library/Taps/ethereum/homebrew-ethereum/ethereum.rb - Reinstall with
brew reinstall ethereum.rb(send a pull request!) - Take a walk
##Patching
First cd /Library/Caches/Homebrew/ethereum--git/ and make your changes. Then git diff > shiny.patch, copy/paste the content of your patch under __END__ of ethereum.rb and replace the def patches block with:
def patches
DATA
end
If you want to submit your change, save your patch in a gist, add your option 'shiny-option', 'Shiny description' and the URL to your gist in the patches block and submit a pull request. Make sure to send a pull request to Ethereum also!