Electrum server requires some small modifications to the bitcoind daemon. The patch is included in the Electrum sources we just downloaded, now we will download the Bitcoin sources, patch, compile and install the binary to our ~/bin directory.
$ cd ~/src
-$ wget https://github.com/bitcoin/bitcoin/tarball/v0.5.1 -O bitcoin-0.5.1.tgz
-$ tar xvzf bitcoin-0.5.1.tgz
-$ mv bitcoin-bitcoin-5623ee7 bitcoin-0.5.1
-$ cd bitcoin-0.5.1/src
-$ patch -p 2 < ~/src/electrum/server/patches/bitcoin-0.5.1.diff
+$ wget https://github.com/bitcoin/bitcoin/tarball/v0.5.2 -O bitcoin-0.5.2.tgz
+$ tar xvzf bitcoin-0.5.2.tgz
+$ mv bitcoin-bitcoin-fb24b05 bitcoin-0.5.2
+$ cd bitcoin-0.5.2/src
+$ patch -p 2 < ~/src/electrum/server/patches/bitcoin-0.5.2.diff
$ make -f makefile.unix
$ strip bitcoind
$ mv bitcoind ~/bin
rpcuser=<rpc-username>
rpcpassword=<rpc-password>
+ daemon=1
-$ bitcoind &
+$ bitcoind
Allow some time to pass, so bitcoind connects to the network and starts downloading blocks. You can check its progress by running:
Listening on http://localhost:2750
-It means the blockchain is imported and you can exit Abe by pressing CTRL-C.
+It means the blockchain is imported and you can exit Abe by pressing CTRL-C. You will not need to run Abe again after this step, Electrum server will update the blockchain by itsself. We only used Abe because it is much faster for the initial import.
Important notice: This is a *very* long process. Even on fast machines you can expect it to take hours. Here are some benchmarks for importing ~159.400 blocks (size of the Bitcoin blockchain at the time of this writing):