Bitcoind x86 binary for CentOS

11 messages BitcoinTalk nimnul, Satoshi Nakamoto, knightmb, sgtstein, Jeff Garzik August 3, 2010 — August 4, 2010
nimnul August 3, 2010 Source · Permalink

Does anyone have the binary?

knightmb August 3, 2010 Source · Permalink

My first obstacle is the missing ecdsa.h (Elliptic Curve Digital Signature Algorithm) file. It’s listed in the man pages for CentOS, but missing from the package, WTF?

Anyway, I guess I can copy it from somewhere else, hopefully I’ll have some binaries for us all soon.

sgtstein August 3, 2010 Source · Permalink

I have successfully built it with 4.8, 4.7 never would but with 4.8 bitcoind locks up whenever it dumps the initial block download to disk. Undecided

knightmb August 3, 2010 Source · Permalink

Just for kicks, tried to compile with DB4.8 got the same error, LOL (the line number was slightly different, but at the same class)

Didn’t get this on other Distros, might be a CentOS related error, but not sure why.

Quote from: knightmb on August 03, 2010, 03:58:05 PM

My first obstacle is the missing ecdsa.h (Elliptic Curve Digital Signature Algorithm) file. It’s listed in the man pages for CentOS, but missing from the package, WTF?

Anyway, I guess I can copy it from somewhere else, hopefully I’ll have some binaries for us all soon.

Yes, ecdsa.h is considered patent-encumbered, so Red Hat and other distros turn off ec-dsa.

Yes, Virginia, this means that bitcoin potentially has patent problems.

knightmb August 3, 2010 Source · Permalink

Quote from: sgtstein on August 03, 2010, 05:30:37 PM

I have successfully built it with 4.8, 4.7 never would but with 4.8 bitcoind locks up whenever it dumps the initial block download to disk.

I’m probably going to load up a virtual machine of CentOS 5.5 and work with that. I’ve really barfed up the server I was experimenting on trying make it build the binary, LOL.

Quote from: sgtstein on August 03, 2010, 05:30:37 PM

I have successfully built it with 4.8, 4.7 never would but with 4.8 bitcoind locks up whenever it dumps the initial block download to disk.

I urge you not to use BDB 4.8.  The database/log0000* files will be incompatible if anyone uses your build and then goes back to the official build.

sgtstein August 3, 2010 Source · Permalink

Ah, crap. I totally forgot about that extra flag. I knew about that before from Lazslo’s Linux Build Document. Sorry about that. Get a working build up and running and you’ll definitely be getting some BTC from me. Grin

knightmb August 3, 2010 Source · Permalink

Oh, but there’s more! Shocked

Even after I did that, I couldn’t get it to compile due to linking errors. I was able to get a solid compile of bitcoind though, this is the extra steps it took.

After compiling and installing the BerkeleyDB4.7, you need to add it’s include path to the makefile.unix

Add -I”/usr/local/BerkeleyDB.4.7/include”

Then you need to copy all the libraries from “/usr/local/BerkeleyDB.4.7/lib” to “/usr/lib” BUT WAIT, there’s MORE! Huh

Yes, and if that was not annoying enough, now it will fail to compile because of an OpenSSL error, Grrrrr..

Now you must copy libcrypto.a and libssl.a from “/usr/local/ssl/lib” to “/usr/lib

Yes, those can be linked, but I got tired of chasing down compiler errors, was easier to just copy them. Roll Eyes

After all of that, then you should be able to compile a bitcoind binary.

I’m testing it now, seems to be working just fine. Downloading blocks and such. When it finishes, I’ll experiment with some coin generation and coin transfer.

I’m still caught on the GUI client compile, currently hangs at Code:/usr/bin/ld: cannot find -lSM If anyone is good with Google, let me know. Wink

knightmb August 3, 2010 Source · Permalink

I’ve posted the binary up here (32 bit only - bitcoind): Click Here

There are two versions, one built from stock code, the other modified to accept up to 1,000 nodes (hence the super node name)

Will probably tackle the GUI client build another day, this one wore me out. Donate some BTC to my sig if you are feeling generous Wink

Quote from: knightmb on August 03, 2010, 11:46:46 PM

There are two versions, one built from stock code, the other modified to accept up to 1,000 nodes (hence the super node name)

I’d rather you didn’t make a build of the 1000 node connecting version available.  It won’t take very many people running that before we have to make another release just to limit the incoming connections.