aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--build-msw.txt91
1 files changed, 91 insertions, 0 deletions
diff --git a/build-msw.txt b/build-msw.txt
new file mode 100644
index 0000000000..eb6348bada
--- /dev/null
+++ b/build-msw.txt
@@ -0,0 +1,91 @@
+Bitcoin v0.2.0 BETA
+
+Copyright (c) 2009 Satoshi Nakamoto
+Distributed under the MIT/X11 software license, see the accompanying
+file license.txt or http://www.opensource.org/licenses/mit-license.php.
+This product includes software developed by the OpenSSL Project for use in
+the OpenSSL Toolkit (http://www.openssl.org/). This product includes
+cryptographic software written by Eric Young (eay@cryptsoft.com).
+
+
+ WINDOWS BUILD NOTES
+
+
+Compilers Supported
+-------------------
+MinGW GCC
+Microsoft Visual C++ 6.0 SP6
+
+
+Dependencies
+------------
+Libraries you need to obtain separately to build:
+
+ default path download
+wxWidgets \wxwidgets http://www.wxwidgets.org/downloads/
+ or prebuilt: http://wxpack.sourceforge.net
+OpenSSL \openssl http://www.openssl.org/source/
+Berkeley DB \db http://www.oracle.com/technology/software/products/berkeley-db/index.html
+Boost \boost http://www.boost.org/users/download/
+
+Their licenses:
+wxWidgets LGPL 2.1 with very liberal exceptions
+OpenSSL Old BSD license with the problematic advertising requirement
+Berkeley DB New BSD license with additional requirement that linked software must be free open source
+Boost MIT-like license
+
+Versions used in this release:
+MinGW GCC 3.4.5
+wxWidgets 2.8.9
+OpenSSL 0.9.8k
+Berkeley DB 4.7.25.NC
+Boost 1.34.1
+
+
+Notes
+-----
+The UI layout is edited with wxFormBuilder. Open the project file
+uiproject.fbp. It generates uibase.cpp and uibase.h, which define base
+classes that do the rote work of constructing all the UI elements.
+
+The release is built with GCC and then "strip bitcoin.exe" to strip the debug
+symbols, which reduces the executable size by about 90%.
+
+
+OpenSSL
+-------
+Bitcoin does not use any encryption. If you want to do a no-everything
+build of OpenSSL to exclude encryption routines, a few patches are required.
+(instructions for OpenSSL v0.9.8k)
+
+Edit engines\e_gmp.c and engines\e_capi.c and add this #ifndef around
+the openssl/rsa.h include:
+ #ifndef OPENSSL_NO_RSA
+ #include <openssl/rsa.h>
+ #endif
+
+Edit ms\mingw32.bat and replace the Configure line's parameters with this
+no-everything list. You have to put this in the batch file because batch
+files can't take more than nine command line parameters.
+ perl Configure mingw threads no-rc2 no-rc4 no-rc5 no-idea no-des no-bf no-cast no-aes no-camellia no-seed no-rsa no-dh
+
+Also REM out the following line in ms\mingw32.bat after the mingw32-make
+line. The build fails after it's already finished building libeay32, which
+is all we care about, but the failure aborts the script before it runs
+dllwrap to generate libeay32.dll.
+ REM if errorlevel 1 goto end
+
+Build
+ cd \openssl
+ ms\mingw32.bat
+
+If you want to use it with MSVC, generate the .lib file
+ lib /machine:i386 /def:ms\libeay32.def /out:out\libeay32.lib
+
+
+Berkeley DB
+-----------
+Using MinGW and MSYS:
+cd \db\build_unix
+sh ../dist/configure --enable-mingw --enable-cxx
+make