Pages:
Author

Topic: Building Armory on OSX - page 9. (Read 32312 times)

hero member
Activity: 868
Merit: 1000
May 01, 2012, 04:06:58 PM
#30
You could install Mac osx on a virtual machine.

I managed to install Snow leopard on virtualbox, using iaktos. It can't work on any hardware though, PM for the details if you want Smiley
legendary
Activity: 1428
Merit: 1093
Core Armory Developer
May 01, 2012, 03:35:25 PM
#29
So now that I got a couple emails about disgruntled mac users, I want to revive this thread to investigate how to proceed.

(1) I still have no mac system
(2) Macs are still expensive
(3) I don't know what kind of mac to get
(4) Is it possible to bundle everything, including python, into a directory and make the executable "/path/to/armory/python /path/to/armory/ArmoryQt.py"?  Or will I really need to produce real executables?

My most important question, going forward, is that I need to understand what is the most-widely-compatible system I can get that will compile code that can be used on other systems?

(5) If I get an older system, will the binaries produced be executable on newer Mac systems?  Older systems?
(6) How much variety is there in the setups?   In linux/debian, it always gets installed to /usr/share/armory.  Would mac have similar consistency?
(7) How much can I expect to pay for an acceptable, used Mac.

And please don't recommend I get a new Mac.  I'm sure the value is phenomenal.  But I really just need the cheapest thing that I can hook a monitor up to that I can use to compile and test Mac binaries.  Old mac donations would be ideal (or at least a cheap sale, I'll pay for shipping), but I don't want to commit until I know what's a good system to acquire.
full member
Activity: 168
Merit: 100
April 08, 2012, 12:44:33 PM
#28
Oh sorry. I misread.  I thought you meant you either wanted to use electrum instead of bitcoin for getting the blockchain, and then still use Armory or wanted to run an electrum server which also requires bitcoind.  Those didn't make any sense, but you were saying that want to use the Electrum client.  That would work (assuming you can get it compiled Smiley )

Yeah, for now I want to keep it light. My machine is about 1/100th too slow to contribute much of anything to the network Tongue. HD space is probably my biggest concern.

Well that is a link to xubuntu which uses XFCE instead of gnome.  I gave you that link to xubuntu rather than ubuntu 10.04 (which uses GNOME2 IIRC) because XFCE has lower system requirements, but still looks nice.

#$%@#%$#$%ing debian Smiley. Debian supports everything. And they have nifty net-install CD images so I can basically construct my own distro.

Well you won't need to build bitcoin-qt, just bitcoind.  Try installing the PPA and then 'sudo apt-get install bitcoind'  That's what I did in my VirtualBox VM and it seems to work fine (Although DO NOT import that wallet since it will use 0.6's compressed keys which aren't supported by Armory's import yet).

Ah, so bitcoin does use qt for its frontend. I had a suspicion Tongue. I'll have to install qt anyway for any of the clients so it's not a big deal. Since I can run the absolute latest debian (and whatever else I feel like on it) I shouldn't have to worry about compatibility issues.
hero member
Activity: 742
Merit: 500
April 08, 2012, 11:29:44 AM
#27
Well this isn't the 'Building on OSX' thread I expected, but I suppose this is still on topic.

I don't think that electrum works like you think it does.

Last I checked electrum feeds off of full nodes with a special server interface, but isn't tied to any one server nor requires owning one.
Oh sorry. I misread.  I thought you meant you either wanted to use electrum instead of bitcoin for getting the blockchain, and then still use Armory or wanted to run an electrum server which also requires bitcoind.  Those didn't make any sense, but you were saying that want to use the Electrum client.  That would work (assuming you can get it compiled Smiley )


Nifty. Is there anything in particular that I might have trouble compiling/updating? For example could I compile and run GNOME3.x on this box, or is that asking too much?
Well that is a link to xubuntu which uses XFCE instead of gnome.  I gave you that link to xubuntu rather than ubuntu 10.04 (which uses GNOME2 IIRC) because XFCE has lower system requirements, but still looks nice.

Compiling Armory in xubuntu 10.04 should be easy. It's new enough to have all the libraries you will need and there is a PPC build. There's even a PPA to install bitcoind and/or bitcoin-qt. Hopefully those work with the unofficial build.  Otherwise, bitcoind isn't too bad too build from source.

Not too worried about it, although I'm not sure what dependencies bitcoind has. Except for Qt (which tries to use newer cocoa bindings) I haven't actually had much trouble compiling things on this machine, and on linux I should probably be able to compile Qt easily enough Tongue. For ~800MB it really doesn't look bad at all.
Well you won't need to build bitcoin-qt, just bitcoind.  Try installing the PPA and then 'sudo apt-get install bitcoind'  That's what I did in my VirtualBox VM and it seems to work fine (Although DO NOT import that wallet since it will use 0.6's compressed keys which aren't supported by Armory's import yet).

If that fails, then the steps to compile (without UPNP) from source are pretty simple.
Code:
sudo apt-get update
sudo apt-get install -y git-core build-essential libssl-dev libboost-all-dev libdb4.8-dev libdb4.8++-dev libgtk2.0-dev

git clone https://github.com/bitcoin/bitcoin.git ~/src/bitcoin
cd ~/src/bitcoin/src

make -f makefile.unix USE_UPNP=
Good luck!
full member
Activity: 168
Merit: 100
April 08, 2012, 05:19:24 AM
#26
I don't think that electrum works like you think it does.

Last I checked electrum feeds off of full nodes with a special server interface, but isn't tied to any one server nor requires owning one.

You haven't touched linux in a while have you? All the modern desktop distros come with all of that stuff installed.  Ubuntu is a simple install and everything is there for you.  Word processing, e-mail, web browsing, cd/dvd burning, games, irc and IM, etc., etc.  However, most modern desktop distros abandoned mainline support for PPC a while ago. Ubuntu moved PPC support to "unofficial" back at version 7, but there is a 10.04 build for PPC.

http://cdimage.ubuntu.com/xubuntu/ports/releases/10.04/release/

Nifty. Is there anything in particular that I might have trouble compiling/updating? For example could I compile and run GNOME3.x on this box, or is that asking too much?

Compiling Armory in xubuntu 10.04 should be easy. It's new enough to have all the libraries you will need and there is a PPC build. There's even a PPA to install bitcoind and/or bitcoin-qt. Hopefully those work with the unofficial build.  Otherwise, bitcoind isn't too bad too build from source.

Not too worried about it, although I'm not sure what dependencies bitcoind has. Except for Qt (which tries to use newer cocoa bindings) I haven't actually had much trouble compiling things on this machine, and on linux I should probably be able to compile Qt easily enough Tongue. For ~800MB it really doesn't look bad at all.
hero member
Activity: 742
Merit: 500
April 08, 2012, 03:45:22 AM
#25
You need the satoshi client to get the blockchain.  So you will need either bitcoin-qt or bitcoind until the networking code is built into Armory.
I was planning on using electrum since my HD space is somewhat limited. Tongue If I can get that working I'll work on armory since the extra stuff it needs shouldn't be too hard.
I don't think that electrum works like you think it does.

Any reason you have to stick with Tiger? I'd recommend installing linux. It actually works with new software (and old hardware) and is much less of a hassle than building new software on an outdated architecture running an outdated OS.

Well, I don't like monokernels Tongue. Not that OSX is really any better, although honestly I don't know much of shit about linux Tongue. I can barely use bash ^_^. That, and I'd hardly know what to look for in terms of even basic functionality. I know Mplayer and I could probably find an IM client, but for email I'd be screwed.
You haven't touched linux in a while have you? All the modern desktop distros come with all of that stuff installed.  Ubuntu is a simple install and everything is there for you.  Word processing, e-mail, web browsing, cd/dvd burning, games, irc and IM, etc., etc.  However, most modern desktop distros abandoned mainline support for PPC a while ago. Ubuntu moved PPC support to "unofficial" back at version 7, but there is a 10.04 build for PPC.

http://cdimage.ubuntu.com/xubuntu/ports/releases/10.04/release/

Compiling Armory in xubuntu 10.04 should be easy. It's new enough to have all the libraries you will need and there is a PPC build. There's even a PPA to install bitcoind and/or bitcoin-qt. Hopefully those work with the unofficial build.  Otherwise, bitcoind isn't too bad too build from source.

And if you are comparing difficulties with Tiger to the latest linux build, that isn't fair at all.  I think trying to get Armory working in Ubuntu 5.04 (which was released about the same time Tiger was) would be a fair comparison and is probably just as much a PITA.

It'd probably be much easier and cheaper to upgrade from Ubuntu 5.04 to the latest on any hardware than to upgrade from Tiger to anything on PPC. Leopard is even more bloated than Tiger, and I'm only vaguely certain that I could upgrade that far. Even if I did even then I doubt this would be any easier since Qt doesn't support anything less than Snow Leopard. x.x
I wasn't talking about the monetary cost.  I was talking about the ease of compiling the code.
full member
Activity: 168
Merit: 100
April 08, 2012, 02:48:22 AM
#24
Well, on the one hand I think I probably did have it figured out. Windowing agnostic mode should cause it to ignore carbon and cocoa which should fix the compatibility issues. I hope.

You need the satoshi client to get the blockchain.  So you will need either bitcoin-qt or bitcoind until the networking code is built into Armory.

I was planning on using electrum since my HD space is somewhat limited. Tongue If I can get that working I'll work on armory since the extra stuff it needs shouldn't be too hard.

Any reason you have to stick with Tiger? I'd recommend installing linux. It actually works with new software (and old hardware) and is much less of a hassle than building new software on an outdated architecture running an outdated OS.

Well, I don't like monokernels Tongue. Not that OSX is really any better, although honestly I don't know much of shit about linux Tongue. I can barely use bash ^_^. That, and I'd hardly know what to look for in terms of even basic functionality. I know Mplayer and I could probably find an IM client, but for email I'd be screwed.

And if you are comparing difficulties with Tiger to the latest linux build, that isn't fair at all.  I think trying to get Armory working in Ubuntu 5.04 (which was released about the same time Tiger was) would be a fair comparison and is probably just as much a PITA.

It'd probably be much easier and cheaper to upgrade from Ubuntu 5.04 to the latest on any hardware than to upgrade from Tiger to anything on PPC. Leopard is even more bloated than Tiger, and I'm only vaguely certain that I could upgrade that far. Even if I did even then I doubt this would be any easier since Qt doesn't support anything less than Snow Leopard. x.x
hero member
Activity: 742
Merit: 500
April 08, 2012, 02:15:29 AM
#23
I just rechecked in ./config -h for QT4 again, and it looks like it's not going to work, period. I really did not want to have to install the satoshi client >_<. Maybe if I erase my HD and start over with Linux it'll work Tongue.

Sad to say, I've been a mac user since before iPods existed, and now I would not ever buy a mac again after the retarded treatment I've gotten. Besides OpenCL, there's not a single thing new intel hardware can do that mine can't, and yet they drop all backward compatibility for OSX 10.5+? The fuck? I bet the latest linux build would compile just fine (on any hardware of my choosing, for that matter), and then I wouldn't have to jump through all these bullshit hoops just to get some random GUI kit to compile. 24 hours I'll never get back =\.
You need the satoshi client to get the blockchain.  So you will need either bitcoin-qt or bitcoind until the networking code is built into Armory.

Any reason you have to stick with Tiger? I'd recommend installing linux. It actually works with new software (and old hardware) and is much less of a hassle than building new software on an outdated architecture running an outdated OS.

And if you are comparing difficulties with Tiger to the latest linux build, that isn't fair at all.  I think trying to get Armory working in Ubuntu 5.04 (which was released about the same time Tiger was) would be a fair comparison and is probably just as much a PITA.
full member
Activity: 168
Merit: 100
April 07, 2012, 11:57:29 PM
#22
I just rechecked in ./config -h for QT4 again, and it looks like it's not going to work, period. I really did not want to have to install the satoshi client >_<. Maybe if I erase my HD and start over with Linux it'll work Tongue.

Sad to say, I've been a mac user since before iPods existed, and now I would not ever buy a mac again after the retarded treatment I've gotten. Besides OpenCL, there's not a single thing new intel hardware can do that mine can't, and yet they drop all backward compatibility for OSX 10.5+? The fuck? I bet the latest linux build would compile just fine (on any hardware of my choosing, for that matter), and then I wouldn't have to jump through all these bullshit hoops just to get some random GUI kit to compile. 24 hours I'll never get back =\.
hero member
Activity: 742
Merit: 500
April 07, 2012, 11:17:43 PM
#21
PPC is going to be a pain.  Sorry  Sad
full member
Activity: 168
Merit: 100
April 07, 2012, 11:14:09 PM
#20
You should try using precompiled binaries (if they are available for an old system).

They're not. I already looked. The only Qt/PyQt binaries available on Tiger are way out of date, and I know at least Electrum requires Qt4.x/PyQt4.x.

It's a one-liner to install homebrew... What problem did you have?

The fact that the PPC fork and the Tiger fork are separate. I probably screwed it up somehow, but I couldn't get it to work at all. Although homebrew seems to have installed (or something), if I type, for example
brew install cryptopp

what I get is
/usr/local/Library/Homebrew/formula.rb:554: warning: already initialized constant CHECKSUM_TYPES
/usr/local/Library/Homebrew/global.rb:80: uninitialized constant RUBY_PATCHLEVEL (NameError)
        from /usr/local/bin/brew:10:in `require'
        from /usr/local/bin/brew:10
hero member
Activity: 742
Merit: 500
April 07, 2012, 11:01:53 PM
#19
Ok I just spent the last !%#@#$%@#$@ 24 hours trying to compile (technically electrum, not that there's a huge difference) on my Tiger/PPC laptop. My conclusion is that it's most likely not possible, although technically not directly the fault of Armory or Electrum in particular, just that Qt is a POS that deserves never to be used ever again Tongue.

In particular, after trying to @#%$@# compile Qt like 3 times now, it has failed Error 1 and Error 2 (after an excruciatingly long config and make process), no matter which way I configure it. At first I got some unrelated problems because it didn't like being dropped in a folder with a space in the name, but even after fixing that, using -universal and -sdk it gave me the same errors I got when it screwed up for other reasons (after it failed the first time I had to completely scrap the source folder because it decided to shuffle the makefiles all kinds of wrong and then make -confclean didn't work at all either due to the pathname issue).
You should try using precompiled binaries (if they are available for an old system).

Quote
On an unrelated note, I think homebrew is probably responsible for a lot of the inconsistencies people are seeing. I never was fond of MacPorts, and I had nothing but trouble trying to install homebrew (gave up on that).
It's a one-liner to install homebrew... What problem did you have?
full member
Activity: 168
Merit: 100
April 07, 2012, 10:47:13 PM
#18
Ok I just spent the last !%#@#$%@#$@ 24 hours trying to compile (technically electrum, not that there's a huge difference) on my Tiger/PPC laptop. My conclusion is that it's most likely not possible, although technically not directly the fault of Armory or Electrum in particular, just that Qt is a POS that deserves never to be used ever again Tongue.

In particular, after trying to @#%$@# compile Qt like 3 times now, it has failed Error 1 and Error 2 (after an excruciatingly long config and make process), no matter which way I configure it. At first I got some unrelated problems because it didn't like being dropped in a folder with a space in the name, but even after fixing that, using -universal and -sdk it gave me the same errors I got when it screwed up for other reasons (after it failed the first time I had to completely scrap the source folder because it decided to shuffle the makefiles all kinds of wrong and then make -confclean didn't work at all either due to the pathname issue).

I might try one more time, using the "platform agnostic" version and -arch instead of -universal and -sdk, sometime after I'm done being angry. If I can just get Qt to install (fuck you nokia) then I can probably get electrum and armory running no problem.

On an unrelated note, I think homebrew is probably responsible for a lot of the inconsistencies people are seeing. I never was fond of MacPorts, and I had nothing but trouble trying to install homebrew (gave up on that). What I did find is that the python site (and others) offer up-to-date versions that install properly (and easily) and you don't have to mess with symlinks (which occur in ~/.bash_profile, at least on my box) or anything like that. Python 2.7.x works great and SIP was no problem to install. I don't expect any problems with Cryptopp, SWIG, or BDB, as everything else compiles fine, but QT is highly dependent on OS version (on mac anyway) and PyQT won't install without it.
hero member
Activity: 742
Merit: 500
April 06, 2012, 01:35:47 PM
#17
Well I can get Armory compiled on my Lion laptop, but no luck on my workstation.

However, it uses pretty much 100% CPU always and takes awhile to do anything.  Since this is handling my money, I'd rather run Armory somewhere I know I can compile it consistently.  I'm installing it in an xubuntu 10.04 desktop VirtualBox VM right now.  Much simpler steps.

Once the blockchain finishes downloading, I'll test it out and compare CPU usage. 
donator
Activity: 3108
Merit: 1166
April 06, 2012, 05:22:45 AM
#16
following & looking forward to running Armory one day on my Mac OS X (Server) Version 10.7.3 (Lion) = latest stable release
legendary
Activity: 1428
Merit: 1093
Core Armory Developer
April 02, 2012, 04:04:05 PM
#15
There was an experimental cmake system put together by "Swift Geek" for Armory.   I never got around to finishing the implementation of it.  However, I did get it integrated into the "cmake" branch on github, so all that work is sitting there, idle.  If someone wanted to check out that branch, and try to merge it into master, I might be inspired to pull it (I've been avoiding pulling in any external changes though, to avoid copyright mixing...)

Especially, if the stuff is basically plug-n-play (with some modifications to accommodate new C++ classes since 5 months ago), then I can probably do it myself.  I just don't have time to go wandering down that path right now, at least not until I know how long that path is...
hero member
Activity: 742
Merit: 500
April 02, 2012, 03:58:14 PM
#14
0.70-beta builds fine with my instructions on OS X 10.6.8.
I have added checkout mmap to the instructions.

I wouldn't change those directions just yet.  The intention was to get 0.70-beta-alpha out there as a testing version (hence a diff branch), and when it's stable I'll merge it back into master.  So far, it sounds like it's fairly stable...

Btw, you mention having to symlink to /usr/bin/python2.7... I'm not good at all with makefiles, so I just did whatever I could that would work.   If anyone has recommendations for improvement (other than cmake), I'm open to it.  Or maybe I should just finish the cmake stuff...
Using 'which python' will not work.

I made a pull request about this a few days ago.  I think cmake would be the proper way to do it though.

https://github.com/etotheipi/BitcoinArmory/pull/3

I got armory compiled on one system, but my other system is giving me trouble and I thought they were identical.  I'll likely have some updates for the Lion build instructions soon.
hero member
Activity: 619
Merit: 500
April 02, 2012, 07:16:46 AM
#13
Btw, you mention having to symlink to /usr/bin/python2.7... I'm not good at all with makefiles, so I just did whatever I could that would work.   If anyone has recommendations for improvement (other than cmake), I'm open to it.  Or maybe I should just finish the cmake stuff...

I'm not a Makefile expert either.
How about doing something like this

Code:
[...]
SWIG_OPTS    += -c++ -python -classic
PYTHON_PATH := $(shell which python)

ifneq (exists, $(shell [ -d PYTHON_PATH/python2.7 ]  && echo exists ))
   SWIG_INC     = -IPYTHON_PATH/python2.6
   LIBRARY_OPTS = -lpthread -lpython2.6
   ifneq (exists, $(shell [ -d PYTHON_PATH/python2.6 ]  && echo exists ))
      SWIG_INC     = -IPYTHON_PATH/python2.5
      LIBRARY_OPTS = -lpthread -lpython2.5
   endif
endif
[...]

PYTHON_PATH will contain the first path it finds.
legendary
Activity: 1428
Merit: 1093
Core Armory Developer
April 02, 2012, 06:55:48 AM
#12
0.70-beta builds fine with my instructions on OS X 10.6.8.
I have added checkout mmap to the instructions.

I wouldn't change those directions just yet.  The intention was to get 0.70-beta-alpha out there as a testing version (hence a diff branch), and when it's stable I'll merge it back into master.  So far, it sounds like it's fairly stable...

Btw, you mention having to symlink to /usr/bin/python2.7... I'm not good at all with makefiles, so I just did whatever I could that would work.   If anyone has recommendations for improvement (other than cmake), I'm open to it.  Or maybe I should just finish the cmake stuff...





hero member
Activity: 619
Merit: 500
April 02, 2012, 06:34:50 AM
#11
0.70-beta builds fine with my instructions on OS X 10.6.8.
I have added checkout mmap to the instructions.
Pages:
Jump to: