aboutsummaryrefslogtreecommitdiff
path: root/build-unix.txt
blob: ceb61ad545aeac9ee9d3758c7d6920ba21198787 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
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).


UNIX BUILD NOTES


Dependencies
------------
Install the dev files for the shared libraries:
apt-get install build-essential
apt-get install libgtk2.0-dev
apt-get install libssl-dev

Libraries you need to obtain separately and build:
              default path   download
wxWidgets      \wxwidgets     http://www.wxwidgets.org/downloads/
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
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:
GCC          4.3.3
OpenSSL      0.9.8k
wxWidgets    2.8.9
Berkeley DB  4.7.25.NC
Boost        1.40.0


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" to strip the debug
symbols, which reduces the executable size by about 90%.


wxWidgets
---------
cd /usr/local/wxWidgets-2.8.9
mkdir buildgtk
cd buildgtk
../configure --with-gtk --enable-debug --disable-shared --enable-monolithic
make
su
make install
ldconfig


Berkeley DB
-----------
cd /usr/local/db-4.7.25.NC/build_unix
../dist/configure --enable-cxx
make


Boost
-----
cd /usr/local/boost_1_40_0
su
./bootstrap.sh
./bjam install