I am using home brew to install ethereum but it keeps returning this error. Is there anyway I can fix it?
The instructions for the non-dev version can be found at Installation Instructions for Mac and follows:
brew tap ethereum/ethereum brew install ethereum
While I'm writing this, I may as well add in the upgrade instructions:
brew update brew upgrade ethereum
To find out the installation information:
brew info ethereum
brew doctorreport? Does it ask you to execute commands line the following to fix up user permissions?
sudo chown -R $(whoami) /Users/bok/Library/Caches/Homebrew
There is a possibility that brew is unable to create the required files in directories with incorrect permissions.
From my $HOME directory, when I type the following command, I have an env.sh file:
Iota:~ bok$ find . -name 'env.sh' ./Library/Caches/Homebrew/ethereum--git/build/env.sh
and the contents of this file follows:
Iota:~ bok$ more ./Library/Caches/Homebrew/ethereum--git/build/env.sh #!/bin/sh set -e if [ ! -f "build/env.sh" ]; then echo "$0 must be run from the root of the repository." exit 2 fi # Create fake Go workspace if it doesn't exist yet. workspace="$PWD/build/_workspace" root="$PWD" ethdir="$workspace/src/github.com/ethereum" if [ ! -L "$ethdir/go-ethereum" ]; then mkdir -p "$ethdir" cd "$ethdir" ln -s ../../../../../. go-ethereum cd "$root" fi # Set up the environment to use the workspace. # Also add Godeps workspace so we build using canned dependencies. GOPATH="$workspace" export GOPATH # Run the command inside the workspace. cd "$ethdir/go-ethereum" PWD="$ethdir/go-ethereum" # Launch the arguments with the configured environment. exec "$@"
You could try creating the file above in the same directory on your computer, then run
chmod 755 ./Library/Caches/Homebrew/ethereum--git/build/env.shto make it an executable file. Then re-run youir
brew install ethereum.
You can download this same file from https://github.com/ethereum/go-ethereum/blob/master/build/env.sh.
You may want to download the Xcode application from your app store. If you have already done this, make sure your have the 8.0 update - check your app store update list.
Looking at the URL provide in your error report https://git.io/brew-troubleshooting:
brew update(twice) and
brew doctorbefore creating an issue!
brew doctorearlier told me that I needed to update my command line tools:
Iota:Downloads bok$ brew doctor .... Warning: You have Xcode 8 installed without the CLT; this causes certain builds to fail on OS X El Capitan (10.11). Please install the CLT via: sudo xcode-select --install Iota:Downloads bok$ sudo xcode-select --install xcode-select: note: install requested for command line developer tools
Looking at https://github.com/ethereum/homebrew-ethereum/issues, you have already reported this issue in Unable to install go-ethereum #89.
The issue with
Unexpected header files: /usr/local/include/python2.7/greenlet/greenlet.hseems to not be a serious problem - see https://github.com/Homebrew/legacy-homebrew/issues/38152 .
If you want to use
brew install ethereumis not working, you can install Ethereum Wallet on your computer from Ethereum Wallet 0.8.6, and the first time you start Ethereum Wallet, it will download your
gethbinary. You will however not have the Solidity compiler
Iota:unpacked bok$ pwd /Users/bok/Library/Application Support/Ethereum Wallet/binaries/Geth/unpacked Iota:unpacked bok$ ll total 72784 drwxr-xr-x 6 bok staff 204 17 Oct 09:58 . drwxr-xr-x 4 bok staff 136 17 Oct 09:58 .. -rw-r--r-- 1 bok staff 32397 16 Oct 20:19 COPYING -rw-r--r-- 1 bok staff 7651 16 Oct 20:19 COPYING.LESSER -rwxr-xr-x 1 bok staff 18611260 17 Oct 09:58 geth -rwxr-xr-x 1 bok staff 18611260 16 Oct 20:07 geth-1.4.18-stable-c72f545-darwin-10.6-amd64 Iota:unpacked bok$ ./geth version Geth Version: 1.4.18-stable-c72f5459 ...
I solve the problem using by following instructions below. I don't know the reason, but I completely get rid of
brew to make it run. (mac)
- install go(I used package)
git clone https://github.com/ethereum/go-ethereum
cd go-ethereum && git checkout tags/v1.8.2
find . -type f -print0 | xargs -0 -n 1 -P 4 dos2unix(if you don't have dos2unix, you could brew one, it does not break anything.)
ln -s /path/to/origin/geth /path/to/target/geth
which geth you could find your geth. Run
geth version you can see your version.