make initial block download reporting somewhat better by tracking version responses
[novacoin.git] / README.rst
1 Bitcoin-qt: Qt4 based GUI replacement for Bitcoin
2 =================================================
3
4 **Warning** **Warning** **Warning**
5
6 Alpha version! I'm using this client myself on the production network, and I haven't noticed any glitches, but remember: always backup your wallet.
7 Testing on the testnet is recommended.
8
9 This has been implemented:
10
11 - qmake / QtCreator project (.pro)
12
13 - Compatibility with Linux (both GNOME and KDE), MacOSX and Windows
14
15 - All functionality of the original client, including taskbar icon/menu
16
17 - Tabbed interface
18
19 - Overview page with current balance, unconfirmed balance, etc
20
21 - User friendly transaction list with status icons, real-time filtering and a context menu that allows editing and copying labels
22
23 - Asks for confirmation before sending coins
24
25 - CSV export of transactions and address book
26
27 - Shows alternative icon when connected to testnet
28
29 - Progress bar on initial block download
30
31 - Sendmany support in UI (send to multiple recipients as well)
32
33 This has to be done:
34
35 - Start at system start
36
37 - Internationalization (convert WX language files)
38
39
40 Build instructions 
41 ===================
42
43 Debian
44 -------
45
46 First, make sure that the required packages for Qt4 development of your
47 distribution are installed, for Debian and Ubuntu these are:
48
49 ::
50
51     apt-get install qt4-qmake libqt4-dev build-essential libboost-dev libboost-system-dev \
52         libboost-filesystem-dev libboost-program-options-dev libboost-thread-dev \
53         libssl-dev libdb4.8++-dev
54
55 then execute the following:
56
57 ::
58
59     qmake
60     make
61
62 Alternatively, install Qt Creator and open the `bitcoin-qt.pro` file.
63
64 An executable named `bitcoin-qt` will be built.
65
66
67 Windows
68 --------
69
70 Windows build instructions:
71
72 - Download the `QT Windows SDK`_ and install it. You don't need the Symbian stuff, just the desktop Qt.
73
74 - Download and extract the `dependencies archive`_  [#]_, or compile openssl, boost and dbcxx yourself.
75
76 - Copy the contents of the folder "deps" to "X:\\QtSDK\\mingw", replace X:\\ with the location where you installed the Qt SDK. Make sure that the contents of "deps\\include" end up in the current "include" directory.
77
78 - Open the .pro file in QT creator and build as normal (ctrl-B)
79
80 .. _`QT Windows SDK`: http://qt.nokia.com/downloads/sdk-windows-cpp
81 .. _`dependencies archive`: http://download.visucore.com/bitcoin/qtgui_deps_1.zip
82 .. [#] PGP signature: http://download.visucore.com/bitcoin/qtgui_deps_1.zip.sig (signed with RSA key ID `610945D0`_)
83 .. _`610945D0`: http://pgp.mit.edu:11371/pks/lookup?op=get&search=0x610945D0
84
85 Berkely DB version warning
86 ==========================
87
88 A warning for people using the *static binary* version of Bitcoin on a Linux/UNIX-ish system (tl;dr: **Berkely DB databases are not forward compatible**).
89
90 The static binary version of Bitcoin is linked against libdb4.7 or libdb4.8 (see also `this Debian issue`_).
91
92 Now the nasty thing is that databases from 5.X are not compatible with 4.X. 
93
94 If the globally installed development package of Berkely DB installed on your system is 5.X, any source you
95 build yourself will be linked against that. The first time you run with a 5.X version the database will be upgraded, 
96 and 4.X cannot open the new format. This means that you cannot go back to the old statically linked version without
97 significant hassle!
98
99 .. _`this Debian issue`: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=621425