bitcoin/bitcoin — pull request #976 by Diapolo (2012-03-22 17:07:20+00:00)
Title: Windows compilation updates / fixes

The commit assumes we update the used Boost libs for Windows to version 1.47, which is the currently used version for compiling bitcoin.

If we switch over to 1.47 on Windows, we need to add oleaut32 lib in bitcoin-qt.pro, to avoid the compilation error "undefined reference to _imp__VariantClear@4", because VariantClear() is used in the boost::interprocess code.

My main intention why im opening this is, because it fixes #956 (https://github.com/bitcoin/bitcoin/issues/956)!

Have a look at this from the Boost changelog for 1.47:
Fixed a hanging problem with intermodule_holder in Win32 platforms related to a Boost.Interprocess issue described at ticket #4606 (https://svn.boost.org/trac/boost/ticket/2796).

I tried to reproduce that GUI freeze from #956 by suspending the Bitcoin-Qt threads and killing them all to reproduce an hard crash. I changed file permissions to the folder, tried write-protecting the BitcoinURL file and all kings of weird things, but I was not able to get a GUI freeze :).

In the end we would need to update the qtgui_deps_1.zip with the 1.47 boost libs for Windows and the 1.47 pre-compiled headers.