]> Git Repo - VerusCoin.git/blob - doc/readme-qt.rst
Merge pull request #2532 from jonasschnelli/mac_plist_fix
[VerusCoin.git] / doc / readme-qt.rst
1 Bitcoin-Qt: Qt4 GUI for Bitcoin
2 ===============================
3
4 Build instructions
5 ===================
6
7 Debian
8 -------
9
10 First, make sure that the required packages for Qt4 development of your
11 distribution are installed, these are
12
13 ::
14
15 for Debian and Ubuntu  <= 11.10 :
16
17 ::
18
19     apt-get install qt4-qmake libqt4-dev build-essential libboost-dev libboost-system-dev \
20         libboost-filesystem-dev libboost-program-options-dev libboost-thread-dev \
21         libssl-dev libdb4.8++-dev
22
23 for Ubuntu >= 12.04 (please read the 'Berkely DB version warning' below):
24
25 ::
26
27     apt-get install qt4-qmake libqt4-dev build-essential libboost-dev libboost-system-dev \
28         libboost-filesystem-dev libboost-program-options-dev libboost-thread-dev \
29         libssl-dev libdb++-dev libminiupnpc-dev
30
31 then execute the following:
32
33 ::
34
35     qmake
36     make
37
38 Alternatively, install `Qt Creator`_ and open the `bitcoin-qt.pro` file.
39
40 An executable named `bitcoin-qt` will be built.
41
42 .. _`Qt Creator`: http://qt-project.org/downloads/
43
44 Mac OS X
45 --------
46
47 - Download and install the `Qt Mac OS X SDK`_. It is recommended to also install Apple's Xcode with UNIX tools.
48
49 - Download and install either `MacPorts`_ or `HomeBrew`_.
50
51 - Execute the following commands in a terminal to get the dependencies using MacPorts:
52
53 ::
54
55         sudo port selfupdate
56         sudo port install boost db48 miniupnpc
57
58 - Execute the following commands in a terminal to get the dependencies using HomeBrew:
59
60 ::
61
62         brew update
63         brew install boost miniupnpc openssl berkeley-db4
64
65 - If using HomeBrew,  edit `bitcoin-qt.pro` to account for library location differences. There's a diff in `contrib/homebrew/bitcoin-qt-pro.patch` that shows what you need to change, or you can just patch by doing
66
67         patch -p1 < contrib/homebrew/bitcoin.qt.pro.patch
68
69 - Open the bitcoin-qt.pro file in Qt Creator and build as normal (cmd-B)
70
71 .. _`Qt Mac OS X SDK`: http://qt-project.org/downloads/
72 .. _`MacPorts`: http://www.macports.org/install.php
73 .. _`HomeBrew`: http://mxcl.github.io/homebrew/
74
75
76 Build configuration options
77 ============================
78
79 UPnP port forwarding
80 ---------------------
81
82 To use UPnP for port forwarding behind a NAT router (recommended, as more connections overall allow for a faster and more stable bitcoin experience), pass the following argument to qmake:
83
84 ::
85
86     qmake "USE_UPNP=1"
87
88 (in **Qt Creator**, you can find the setting for additional qmake arguments under "Projects" -> "Build Settings" -> "Build Steps", then click "Details" next to **qmake**)
89
90 This requires miniupnpc for UPnP port mapping.  It can be downloaded from
91 http://miniupnp.tuxfamily.org/files/.  UPnP support is not compiled in by default.
92
93 Set USE_UPNP to a different value to control this:
94
95 +------------+--------------------------------------------------------------------------+
96 | USE_UPNP=- | no UPnP support, miniupnpc not required;                                 |
97 +------------+--------------------------------------------------------------------------+
98 | USE_UPNP=0 | (the default) built with UPnP, support turned off by default at runtime; |
99 +------------+--------------------------------------------------------------------------+
100 | USE_UPNP=1 | build with UPnP support turned on by default at runtime.                 |
101 +------------+--------------------------------------------------------------------------+
102
103 Notification support for recent (k)ubuntu versions
104 ---------------------------------------------------
105
106 To see desktop notifications on (k)ubuntu versions starting from 10.04, enable usage of the
107 FreeDesktop notification interface through DBUS using the following qmake option:
108
109 ::
110
111     qmake "USE_DBUS=1"
112
113 Generation of QR codes
114 -----------------------
115
116 libqrencode may be used to generate QRCode images for payment requests.
117 It can be downloaded from http://fukuchi.org/works/qrencode/index.html.en, or installed via your package manager. Pass the USE_QRCODE
118 flag to qmake to control this:
119
120 +--------------+--------------------------------------------------------------------------+
121 | USE_QRCODE=0 | (the default) No QRCode support - libarcode not required                 |
122 +--------------+--------------------------------------------------------------------------+
123 | USE_QRCODE=1 | QRCode support enabled                                                   |
124 +--------------+--------------------------------------------------------------------------+
125
126
127 Berkely DB version warning
128 ==========================
129
130 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**).
131
132 The static binary version of Bitcoin is linked against libdb4.8 (see also `this Debian issue`_).
133
134 Now the nasty thing is that databases from 5.X are not compatible with 4.X.
135
136 If the globally installed development package of Berkely DB installed on your system is 5.X, any source you
137 build yourself will be linked against that. The first time you run with a 5.X version the database will be upgraded,
138 and 4.X cannot open the new format. This means that you cannot go back to the old statically linked version without
139 significant hassle!
140
141 .. _`this Debian issue`: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=621425
142
143 Ubuntu 11.10 warning
144 ====================
145
146 Ubuntu 11.10 has a package called 'qt-at-spi' installed by default.  At the time of writing, having that package
147 installed causes bitcoin-qt to crash intermittently.  The issue has been reported as `launchpad bug 857790`_, but
148 isn't yet fixed.
149
150 Until the bug is fixed, you can remove the qt-at-spi package to work around the problem, though this will presumably
151 disable screen reader functionality for Qt apps:
152
153 ::
154
155     sudo apt-get remove qt-at-spi
156
157 .. _`launchpad bug 857790`: https://bugs.launchpad.net/ubuntu/+source/qt-at-spi/+bug/857790
This page took 0.033081 seconds and 4 git commands to generate.