d516d2f599352405724d182be91ed5422ba5ebf1
[novacoin.git] / doc / build-msw.txt
1 Copyright (c) 2009-2012 Bitcoin Developers
2 Copyright (c) 2013 NovaCoin Developers
3 Distributed under the MIT/X11 software license, see the accompanying
4 file license.txt or http://www.opensource.org/licenses/mit-license.php.
5 This product includes software developed by the OpenSSL Project for use in
6 the OpenSSL Toolkit (http://www.openssl.org/).  This product includes
7 cryptographic software written by Eric Young (eay@cryptsoft.com) and UPnP
8 software written by Thomas Bernard.
9
10
11 See readme-qt.rst for instructions on building NovaCoin QT, the
12 graphical user interface.
13
14 WINDOWS BUILD NOTES
15 ===================
16
17 Compilers Supported
18 -------------------
19 TODO: What works?
20 Note: releases are cross-compiled using mingw running on Linux.
21
22
23 Dependencies
24 ------------
25 Libraries you need to download separately and build:
26
27                 default path               download
28 OpenSSL         \openssl-1.0.1j-mgw        http://www.openssl.org/source/
29 Berkeley DB     \db-6.0.20.NC-mgw          http://www.oracle.com/technology/software/products/berkeley-db/index.html
30 Boost           \boost-1.57.0-mgw          http://www.boost.org/users/download/
31 miniupnpc       \miniupnpc-1.9-mgw         http://miniupnp.tuxfamily.org/files/
32
33 Their licenses:
34 OpenSSL        Old BSD license with the problematic advertising requirement
35 Berkeley DB    New BSD license with additional requirement that linked software must be free open source
36 Boost          MIT-like license
37 miniupnpc      New (3-clause) BSD license
38
39 Versions used in this release:
40 OpenSSL      1.0.1j
41 Berkeley DB  6.0.20.NC
42 Boost        1.57.0
43 miniupnpc    1.9
44
45
46 OpenSSL
47 -------
48 MSYS shell:
49 un-tar sources with MSYS 'tar xfz' to avoid issue with symlinks (OpenSSL ticket 2377)
50 change 'MAKE' env. variable from 'C:\MinGW32\bin\mingw32-make.exe' to '/c/MinGW32/bin/mingw32-make.exe'
51
52 cd /c/openssl-1.0.1j-mgw
53 ./config
54 make
55
56 Berkeley DB
57 -----------
58 MSYS shell:
59 cd /c/db-6.0.20.NC-mgw/build_unix
60 sh ../dist/configure --enable-mingw --enable-cxx
61 make
62
63 Boost
64 -----
65 DOS prompt:
66 downloaded boost jam 3.1.18
67 cd \boost-1.57.0-mgw
68 bjam toolset=gcc --build-type=complete stage
69
70 MiniUPnPc
71 ---------
72 UPnP support is optional, make with USE_UPNP= to disable it.
73
74 MSYS shell:
75 cd /c/miniupnpc-1.9-mgw
76 make -f Makefile.mingw
77 mkdir miniupnpc
78 cp *.h miniupnpc/
79
80 NovaCoin
81 -------
82 DOS prompt:
83 cd \novacoin\src
84 mingw32-make -f makefile.mingw
85 strip novacoind.exe