|
|
@ -1,4 +1,4 @@ |
|
|
|
Copyright (c) 2009-2010 Satoshi Nakamoto |
|
|
|
Copyright (c) 2009-2011 Bitcoin Developers |
|
|
|
Distributed under the MIT/X11 software license, see the accompanying |
|
|
|
Distributed under the MIT/X11 software license, see the accompanying |
|
|
|
file license.txt or http://www.opensource.org/licenses/mit-license.php. |
|
|
|
file license.txt or http://www.opensource.org/licenses/mit-license.php. |
|
|
|
This product includes software developed by the OpenSSL Project for use in |
|
|
|
This product includes software developed by the OpenSSL Project for use in |
|
|
@ -11,23 +11,22 @@ WINDOWS BUILD NOTES |
|
|
|
|
|
|
|
|
|
|
|
Compilers Supported |
|
|
|
Compilers Supported |
|
|
|
------------------- |
|
|
|
------------------- |
|
|
|
MinGW GCC (recommended) |
|
|
|
MinGW GCC |
|
|
|
http://tdm-gcc.tdragon.net/ has an easy installer. Go back a few versions |
|
|
|
http://tdm-gcc.tdragon.net/ has an easy installer. Go back a few versions |
|
|
|
for a little older gcc like gcc 4.4.?. |
|
|
|
for a little older gcc like gcc 4.4.?. |
|
|
|
|
|
|
|
|
|
|
|
MSVC 8.0 (2005) SP1 has been tested. Note: MSVC 7.0 and up have a habit of |
|
|
|
MSVC 10.0 (2010) was used to build this release. |
|
|
|
linking to runtime DLLs that are not installed on XP by default. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Dependencies |
|
|
|
Dependencies |
|
|
|
------------ |
|
|
|
------------ |
|
|
|
Libraries you need to download separately and build: |
|
|
|
Libraries you need to download separately and build: |
|
|
|
|
|
|
|
|
|
|
|
default path download |
|
|
|
default path download |
|
|
|
wxWidgets-2.9 \wxwidgets http://www.wxwidgets.org/downloads/ |
|
|
|
wxWidgets \wxwidgets http://www.wxwidgets.org/downloads/ |
|
|
|
OpenSSL \openssl http://www.openssl.org/source/ |
|
|
|
OpenSSL \openssl http://www.openssl.org/source/ |
|
|
|
Berkeley DB \db http://www.oracle.com/technology/software/products/berkeley-db/index.html |
|
|
|
Berkeley DB \db http://www.oracle.com/technology/software/products/berkeley-db/index.html |
|
|
|
Boost \boost http://www.boost.org/users/download/ |
|
|
|
Boost \boost http://www.boost.org/users/download/ |
|
|
|
|
|
|
|
|
|
|
|
Their licenses: |
|
|
|
Their licenses: |
|
|
|
wxWidgets LGPL 2.1 with very liberal exceptions |
|
|
|
wxWidgets LGPL 2.1 with very liberal exceptions |
|
|
@ -36,11 +35,10 @@ Berkeley DB New BSD license with additional requirement that linked software |
|
|
|
Boost MIT-like license |
|
|
|
Boost MIT-like license |
|
|
|
|
|
|
|
|
|
|
|
Versions used in this release: |
|
|
|
Versions used in this release: |
|
|
|
MinGW GCC 3.4.5 |
|
|
|
wxWidgets 2.9.1 |
|
|
|
wxWidgets 2.9.0 |
|
|
|
OpenSSL 1.0.0c |
|
|
|
OpenSSL 0.9.8k |
|
|
|
|
|
|
|
Berkeley DB 4.7.25.NC |
|
|
|
Berkeley DB 4.7.25.NC |
|
|
|
Boost 1.42.1 |
|
|
|
Boost 1.45.0 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Notes |
|
|
|
Notes |
|
|
@ -49,61 +47,33 @@ The UI layout is edited with wxFormBuilder. The project file is |
|
|
|
uiproject.fbp. It generates uibase.cpp and uibase.h, which define base |
|
|
|
uiproject.fbp. It generates uibase.cpp and uibase.h, which define base |
|
|
|
classes that do the rote work of constructing all the UI elements. |
|
|
|
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 |
|
|
|
This release was built with a Visual C++ 10.0 toolchain (nmake); previous |
|
|
|
symbols, which reduces the executable size by about 90%. |
|
|
|
releases were built using mingw. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
wxWidgets |
|
|
|
wxWidgets |
|
|
|
--------- |
|
|
|
--------- |
|
|
|
cd \wxwidgets\build\msw |
|
|
|
cd \wxwidgets\build\msw |
|
|
|
make -f makefile.gcc |
|
|
|
nmake -f makefile.vc SHARED=0 MONOLITHIC=1 BUILD=release UNICODE=1 CFB=Unicode |
|
|
|
or |
|
|
|
|
|
|
|
nmake -f makefile.vc |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
OpenSSL |
|
|
|
OpenSSL |
|
|
|
------- |
|
|
|
------- |
|
|
|
If you want to exclude unused optional algorithms, a few patches are required. |
|
|
|
cd c:\openssl\src\openssl-1.0.0c |
|
|
|
(instructions for OpenSSL v0.9.8k) |
|
|
|
perl Configure VC-WIN32 --prefix=c:/openssl |
|
|
|
|
|
|
|
ms\do_ms.bat |
|
|
|
Edit engines\e_gmp.c and engines\e_capi.c and add this #ifndef around |
|
|
|
nmake -f ms\nt.mak |
|
|
|
the openssl/rsa.h include: |
|
|
|
nmake -f ms\nt.mak install |
|
|
|
#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're using MSVC, generate the .lib file |
|
|
|
|
|
|
|
lib /machine:i386 /def:ms\libeay32.def /out:out\libeay32.lib |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Berkeley DB |
|
|
|
Berkeley DB |
|
|
|
----------- |
|
|
|
----------- |
|
|
|
Using MinGW and MSYS: |
|
|
|
Built in Visual C++ Express (project files had to be converted |
|
|
|
cd \db\build_unix |
|
|
|
using Visual C++ Pro and then copied to build environment) |
|
|
|
sh ../dist/configure --enable-mingw --enable-cxx |
|
|
|
Compiled Release db_static project in Visual Studio Express. |
|
|
|
make |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Boost |
|
|
|
Boost |
|
|
|
----- |
|
|
|
----- |
|
|
|
download bjam.exe from |
|
|
|
download bjam.exe from |
|
|
|
http://sourceforge.net/project/showfiles.php?group_id=7586&package_id=72941 |
|
|
|
http://sourceforge.net/project/showfiles.php?group_id=7586&package_id=72941 |
|
|
|
cd \boost |
|
|
|
cd \boost |
|
|
|
bjam toolset=gcc --build-type=complete stage |
|
|
|
|
|
|
|
or |
|
|
|
|
|
|
|
bjam toolset=msvc --build-type=complete stage |
|
|
|
bjam toolset=msvc --build-type=complete stage |
|
|
|
|
|
|
|
|
|
|
|