Don't scan the time offsets vector repeatedly once we've displayed the warning that...
[novacoin.git] / build-unix.txt
1 Copyright (c) 2009-2010 Satoshi Nakamoto
2 Distributed under the MIT/X11 software license, see the accompanying
3 file license.txt or http://www.opensource.org/licenses/mit-license.php.
4 This product includes software developed by the OpenSSL Project for use in
5 the OpenSSL Toolkit (http://www.openssl.org/).  This product includes
6 cryptographic software written by Eric Young (eay@cryptsoft.com).
7
8
9 UNIX BUILD NOTES
10 ================
11
12 Dependencies
13 ------------
14 sudo apt-get install build-essential
15 sudo apt-get install libgtk2.0-dev
16 sudo apt-get install libssl-dev
17 sudo apt-get install libdb4.7-dev
18 sudo apt-get install libdb4.7++-dev
19 Boost 1.40+: sudo apt-get install libboost-all-dev
20 or Boost 1.37: sudo apt-get install libboost1.37-dev
21
22 If using Boost 1.37, append -mt to the boost libraries in the makefile.
23
24 We're using wxWidgets 2.9.0, which uses UTF-8.  Don't try 2.8, it won't work.
25 The build hasn't been updated to work with wxWidgets 2.9.1 yet.
26
27 You need to download wxWidgets from http://www.wxwidgets.org/downloads/
28 and build it yourself.  See the build instructions and configure parameters
29 below.
30
31 Licenses of statically linked libraries:
32 wxWidgets      LGPL 2.1 with very liberal exceptions
33 Berkeley DB    New BSD license with additional requirement that linked software must be free open source
34 Boost          MIT-like license
35
36 Versions used in this release:
37 GCC          4.3.3
38 OpenSSL      0.9.8g
39 wxWidgets    2.9.0
40 Berkeley DB  4.7.25.NC
41 Boost        1.37
42
43
44 Notes
45 -----
46 The UI layout is edited with wxFormBuilder.  The project file is
47 uiproject.fbp.  It generates uibase.cpp and uibase.h, which define base
48 classes that do the rote work of constructing all the UI elements.
49
50 The release is built with GCC and then "strip bitcoin" to strip the debug
51 symbols, which reduces the executable size by about 90%.
52
53
54 wxWidgets
55 ---------
56 cd /usr/local
57 tar -xzvf wxWidgets-2.9.0.tar.gz
58 cd wxWidgets-2.9.0
59 mkdir buildgtk
60 cd buildgtk
61 ../configure --with-gtk --enable-debug --disable-shared --enable-monolithic
62 make
63 sudo su
64 make install
65 ldconfig
66
67
68 Berkeley DB
69 -----------
70 You need Berkeley DB 4.7.  Don't use 4.8, the database/log0000* files
71 are incompatible.  If you have to build Berkeley DB yourself:
72 ../dist/configure --enable-cxx
73 make
74
75
76 Boost
77 -----
78 If you need to build Boost yourself:
79 sudo su
80 ./bootstrap.sh
81 ./bjam install