Skip to content

Instantly share code, notes, and snippets.

@BlinkyStitt
Last active October 31, 2016 06:13
Show Gist options
  • Star 17 You must be signed in to star a gist
  • Fork 5 You must be signed in to fork a gist
  • Save BlinkyStitt/4200620 to your computer and use it in GitHub Desktop.
Save BlinkyStitt/4200620 to your computer and use it in GitHub Desktop.
Building BitcoinArmory on OSX up to 10.8
Instructions for 10.9 are in the works.
Install and configure brew
$ ruby -e "$(curl -fsSkL raw.github.com/mxcl/homebrew/go)"
$ touch ~/.bashrc
$ echo "export CFLAGS=\"-arch x86_64\"" >> ~/.bashrc
$ echo "export ARCHFLAGS=\"-arch x86_64\"" >> ~/.bashrc
$ source ~/.bashrc
$ brew update
$ brew doctor
Do what the doctor says! This will more than likely include installing XCode from the App Store and then installing the "Command line tools" from "Xcode > Preferences > Downloads"
Now you have two choices. You can install the code via my brew tap, or you can use git to clone BitcoinArmory and build it manually yourself.
I recommend using method 1 as it is just as secure and provides a nice "ArmoryQt.command" to make launching the program easy.
===================================
METHOD 1: BREW TAP
===================================
Run the following commands WITH THE FOLLOWING CASE. Tapping is case sensitive!
$ brew tap WyseNynja/bitcoin
$ brew fetch --deps wysenynja/bitcoin/armory-qt
Make sure armory is from etotheipi's github and everything has the proper hashes.
Now install some dependencies that don't play nice if they are installed at the same time as armory.
$ brew install python gpg
$ pip install twisted psutil
Now import the signing key. You do not need to mark the key as trusted for the tag to be verified
$ gpg --recv-keys --keyserver keyserver.ubuntu.com 98832223
Now you are ready to actually install armory-qt!
$ brew install wysenynja/bitcoin/armory-qt
Running armory is incredibly easy!
$ ArmoryQt.command
===================================
METHOD 2: MANUAL
===================================
$ brew install python cryptopp swig sip qt pyqt git
Make sure this ends in success!
I prefer to use brew's python since it is newer (2.7.3 vs ML's 2.7.2). Plus it is installed as my user so I can muck with it without sudo and I don't have to worry about breaking anything on my system.
Then run some more commands
$ pip install twisted
$ mkdir ~/src
$ cd ~/src
$ git clone git://github.com/etotheipi/BitcoinArmory.git
$ cd BitcoinArmory
$ make
Running Armory is a bit awkward, but it isn't too bad. You have to set PYTHONPATH so the system python can find pyqt and twisted. I'm not sure why, but I haven't been able to get Armory built against brew's python. Since "make" built against the system python, you need to make sure that you use the system python. Brew recommends you put it's python in the front of PATH (which you did if you followed my instructions above), so using the full path to the system python makes sure it is used.
$ PYTHONPATH=`brew --prefix`/lib/python2.7/site-packages /usr/bin/python ~/src/BitcoinArmory/ArmoryQt.py
===================================
OTHER PACKAGES
===================================
Currently, Armory requires the satoshi client (bitcoin-qt or bitcoind) in order to connect to the Bitcoin network. You can either run bitcoin-qt or bitcoind. To get bitcoind on OSX, you can use my brew tap to install the latest stable version.
$ brew install wysenynja/bitcoin/bitcoind
You can also install the latest master, or luke-jr's next-test branch
$ brew install wysenynja/bitcoin/bitcoind --HEAD
$ brew install wysenynja/bitcoin/bitcoind-next-test --HEAD
@LargePig
Copy link

LargePig commented Mar 3, 2013

What does this mean:
fatal: https://github.com/WyseNinja/homebrew-bitcoin/info/refs?service=git-upload-pack not found: did you run git update-server-info on the server?

Edit:
NVM, manual build works. Great work, ta!

@colindean
Copy link

I followed the manual method, as I already have Homebrew installed. Wffm.

@gwillen
Copy link

gwillen commented Apr 4, 2013

I didn't realize you can't pull request gists, but:

https://gist.github.com/gwillen/5308107/revisions

I found that the install process failed because I didn't have the Armory signing key, and brew refuses to install the package without it. I added a step to retrieve it.

The instructions as I wrote them will still fail if you don't have gpg installed when you start the process.

@BlinkyStitt
Copy link
Author

gwillen, the tap will install gpg for you and git verify-tag will retrieve the key automatically.

The only time I've seen this fail is if you have manually installed gpg and misconfigured the default keyserver.

EDIT: Hmm. It only has that behavior on one of my systems and others fail. I'll change my directions.

@BlinkyStitt
Copy link
Author

LargePig: that is an interesting error. It is because github URLs are case sensitive, but the brew commands are not. You need to tap "WyseNynja/bitcoin" NOT "wysenynja/bitcoin"

@nicexe
Copy link

nicexe commented Apr 14, 2013

You probably want to change ==> http://www.riverbankcomputing.co.uk/static/Downloads/PyQt4/redirect.txt because the following error occurs.

==> Downloading http://www.riverbankcomputing.co.uk/static/Downloads/PyQt4/PyQt-mac-gpl-4.9.4.tar.gz

curl: (22) The requested URL returned error: 404
Error: Download failed: http://www.riverbankcomputing.co.uk/static/Downloads/PyQt4/PyQt-mac-gpl-4.9.4.tar.gz

@stevenroose
Copy link

To do the manual install, you also need to do pip install psutil

@hemlockII
Copy link

Is there a way to start Armory after manual install above like a regular app with an icon? On linux, you could simply create a symlink with the above "PYHTONPATH=.." command but don't know how to do so with OS X. Doing this everytime is a bit awkward indeed.

@throughnothing
Copy link

I'm having to use this to get QT to build in OS X Mavericks 10.9

Homebrew/legacy-homebrew#23793

@zeallous
Copy link

I had armory before Mavericks and it works get, but after mavericks, Armory doesn't load. So do I follow the instructions above?

fyi: my QT opens as normal.

@zeallous
Copy link

another question:
if I still armory in my Windows (windows via VMWare), is it possible to access my bit coins that way too?

@zeallous
Copy link

oh oops, I didn't read the "Instructions for 10.9 are in the works" ...ok I'll wait for your instructions

@robertburkhalter
Copy link

Sorry if the answer to this is obvious. Do I put the commands into the terminal application ?

@chevdor
Copy link

chevdor commented Dec 19, 2013

Hi,

I just want to report that I am running 0.89.99.14-beta on maverick and even tough I don´t trust it (some parts are not working) I can say that it does start (it just takes about 15 minutes to 'build' the db).

@robertburkhalter The short answer is yes but if you ask, since Armory is not the easiest thing to build, I would recommend to discover/learn brew and the command line a little before trying to build Armory. You can find plenty of smaller projects you can clone and build on your mac to discover how it works. Just my recommendation :)

@intelliot
Copy link

Do these instructions work on Mac OS X 10.9.2?

@intelliot
Copy link

@troelsfr
Copy link

Hi,

First of all, thanks for making a tutorial on this. I get following error when I try to install:

==> Cloning https://github.com/etotheipi/BitcoinArmory.git
Updating /Library/Caches/Homebrew/armory-qt--git
==> Checking out tag v0.91.1
==> Patching
patching file ArmoryQt.command
can't find file to patch at input line 14
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:
--------------------------
|diff --git a/osxbuild/deploy.sh b/osxbuild/deploy.sh
|index de3e31b..11b6975 100755
|--- a/osxbuild/deploy.sh
|+++ b/osxbuild/deploy.sh
--------------------------
No file to patch.  Skipping patch.
1 out of 1 hunk ignored
patching file cppForSwig/Makefile
Hunk #1 FAILED at 17.
1 out of 1 hunk FAILED -- saving rejects to file cppForSwig/Makefile.rej
Error: Applying DATA patch failed

Do you have any idea as to why that is? I would have liked to supply you with Makefile.rej, but there is no such file in the cppForSwig directory.

@droark
Copy link

droark commented Oct 31, 2016

Hi. In case anybody stumbles upon this file moving forward, up-to-date instructions can be found here. That said, this guide was quite useful back in the day, especially when Alan basically relied on community support to get the OS X version going. :) Thanks to the original author!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment