Hi all, I recently went through the process of building bitcoind on windows.I found the official build-msw.txt to be a bit lacking, so I thought that documenting the steps here on the forums could save some time to people wanting to compile their own windows binary.

Please note this is mostly for testing purposes. Always use official executables on production environments.The following instructions are intended for use with version 0.9.4. See additional notes if compiling 0.10rc4 or an older 0.8.6 branch.

Make sure no mingw packages are checked for installation or present from a previous install. Only the above msys packages should be installed. Also make sure that msys-gcc and msys-w32api packages are not installed.

Additional notes for older Bitcoin 0.8.6 (may be useful for Bitcoin based altcoins)msys-autoconf, msys-automake and msys-libtool at step 1.1 are not needed. You can skip steps 2.5 and 2.7.Note that openssl v1.0.1k and later may lead to consesus forks:http://sourceforge.net/p/bitcoin/mailman/message/33221963/

23/4/2014:removed python and activestate perl as they are not needed with current qt config options,use -openssl-linked instead of -openssl (see src\network\ssl\qsslsocket_openssl_symbols.cpp for more info),do not compile shared libraries when building dependencies,libpng 1.6.10.

Great guide. Now that you're not a newbie anymore, consider moving it to "Development & Technical Discussion" so it doesn't get buried with all the other newbie threads. Also, is it possible to expand your guide to include building the qt client?

Bitcoin Core developer [PGP]Warning: For most, coin loss is a larger risk than coin theft. A disk can die any time. Regularly back up your wallet through File → Backup Wallet to an external storage or the (encrypted!) cloud. Use a separate offline wallet for storing larger amounts.

It's possible to compile Bitcoin-Qt as well, done it already. Depending on your toolchain(GCC 4.7+), you may need to compile the Qt libraries from source, only takes about an hour or so. Then the rest is easy.

It's possible to compile Bitcoin-Qt as well, done it already. Depending on your toolchain(GCC 4.7+), you may need to compile the Qt libraries from source, only takes about an hour or so. Then the rest is easy.

Building a dinamically linked executable was almost straightforward (didn't have time to check if it actually works), however I was unable to get a statically linked executable (lots of undefined references from ld) after compiling static qt libs. Need to investigate further.I will update the first post with the required steps in the next few days.

Apparently code block uses it's project files in lieu of make files, but there are ways to use make files when compiling in code blocks, go it.

My confusion was when I've compiled stuff using codeblocks I never needed a makefile, but now I see why. I just got my hands on VS12 so eventually I'll have to learn how to use that.

Apologize, I havn't done C++ in 10 years since college and back in those days I used a borland compiler on a unix server and never did anything that complex.

Right now I'm re-learning everything and getting a crash course in Programming, Cryptography and Bitcoin source code. Although I have learned a lot in a short period of time although this project will take awhile but my current goal is to successfully compile Litecoin so I can see how it's done, then understand the genesis block code which I conceptually am starting to get now it's just a matter of seeing how it translates in code.

(spent the weekend reading on the history and concept of proof of work, etc.)

thanks, I'll play with that, I want to get gitian builder setup in my VMbox but I'm not sure how to install it from the source (I assume you compile, but as you can see I'm learning about compiling at the moment making it hard for me to install gitian)

thanks, I'll play with that, I want to get gitian builder setup in my VMbox but I'm not sure how to install it from the source (I assume you compile, but as you can see I'm learning about compiling at the moment making it hard for me to install gitian)

gitian is pretty easy. it sets up the vm, installs all the packages needed for compilation, and compiles it. It's all done inside a vm with scripts (included with bitcoin), so it's actually easier than compiling using your own tools.