2012-07-18 16:11:56 +02:00
Bitcoin-Qt: Qt4 GUI for Bitcoin
2011-10-14 17:06:57 +02:00
===============================
2011-05-15 20:11:58 +02:00
2011-09-18 11:55:41 +02:00
Build instructions
2011-06-11 23:12:39 +02:00
===================
2011-07-04 07:45:28 +02:00
Debian
-------
2011-06-11 23:12:39 +02:00
First, make sure that the required packages for Qt4 development of your
2012-12-03 13:36:44 +01:00
distribution are installed, these are
::
for Debian and Ubuntu <= 11.10 :
2011-06-11 23:12:39 +02:00
::
2011-07-02 10:33:36 +02:00
apt-get install qt4-qmake libqt4-dev build-essential libboost-dev libboost-system-dev \
2011-07-03 07:51:20 +02:00
libboost-filesystem-dev libboost-program-options-dev libboost-thread-dev \
2011-07-02 10:33:36 +02:00
libssl-dev libdb4.8++-dev
2011-06-11 23:12:39 +02:00
2012-12-03 13:36:44 +01:00
for Ubuntu >= 12.04 (please read the 'Berkely DB version warning' below):
::
apt-get install qt4-qmake libqt4-dev build-essential libboost-dev libboost-system-dev \
libboost-filesystem-dev libboost-program-options-dev libboost-thread-dev \
libssl-dev libdb++-dev libminiupnpc-dev
2011-06-11 23:12:39 +02:00
then execute the following:
::
qmake
make
2012-07-18 16:11:56 +02:00
Alternatively, install `Qt Creator`_ and open the `bitcoin-qt.pro` file.
2011-06-11 23:12:39 +02:00
2011-06-12 14:32:36 +02:00
An executable named `bitcoin-qt` will be built.
2011-06-11 23:12:39 +02:00
2012-09-22 07:32:28 +02:00
.. _`Qt Creator`: http://qt-project.org/downloads/
2011-07-04 07:45:28 +02:00
2011-09-11 17:42:20 +02:00
Mac OS X
--------
- Download and install the `Qt Mac OS X SDK`_ . It is recommended to also install Apple's Xcode with UNIX tools.
- Download and install `MacPorts`_ .
- Execute the following commands in a terminal to get the dependencies:
::
sudo port selfupdate
2012-01-19 21:45:49 +01:00
sudo port install boost db48 miniupnpc
2011-09-11 17:42:20 +02:00
2012-07-18 16:11:56 +02:00
- Open the bitcoin-qt.pro file in Qt Creator and build as normal (cmd-B)
2011-09-11 17:42:20 +02:00
2012-09-22 07:32:28 +02:00
.. _`Qt Mac OS X SDK`: http://qt-project.org/downloads/
2011-09-11 17:42:20 +02:00
.. _`MacPorts`: http://www.macports.org/install.php
2011-09-03 20:52:54 +02:00
Build configuration options
============================
2012-07-18 16:11:56 +02:00
UPnP port forwarding
2011-09-03 20:52:54 +02:00
---------------------
2011-09-02 18:42:59 +02:00
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:
::
qmake "USE_UPNP=1"
(in **Qt Creator** , you can find the setting for additional qmake arguments under "Projects" -> "Build Settings" -> "Build Steps", then click "Details" next to **qmake** )
This requires miniupnpc for UPnP port mapping. It can be downloaded from
2011-09-11 17:42:20 +02:00
http://miniupnp.tuxfamily.org/files/. UPnP support is not compiled in by default.
2011-09-02 18:42:59 +02:00
Set USE_UPNP to a different value to control this:
2011-10-02 09:47:23 +02:00
+------------+--------------------------------------------------------------------------+
| USE_UPNP=- | no UPnP support, miniupnpc not required; |
+------------+--------------------------------------------------------------------------+
| USE_UPNP=0 | (the default) built with UPnP, support turned off by default at runtime; |
+------------+--------------------------------------------------------------------------+
| USE_UPNP=1 | build with UPnP support turned on by default at runtime. |
+------------+--------------------------------------------------------------------------+
2011-09-02 18:42:59 +02:00
2011-09-03 20:52:54 +02:00
Notification support for recent (k)ubuntu versions
---------------------------------------------------
2011-09-18 11:55:41 +02:00
To see desktop notifications on (k)ubuntu versions starting from 10.04, enable usage of the
2011-09-03 20:52:54 +02:00
FreeDesktop notification interface through DBUS using the following qmake option:
::
qmake "USE_DBUS=1"
2012-02-07 21:16:28 +01:00
Generation of QR codes
-----------------------
2012-09-22 07:32:28 +02:00
libqrencode may be used to generate QRCode images for payment requests.
It can be downloaded from http://fukuchi.org/works/qrencode/index.html.en, or installed via your package manager. Pass the USE_QRCODE
2012-02-07 21:16:28 +01:00
flag to qmake to control this:
+--------------+--------------------------------------------------------------------------+
| USE_QRCODE=0 | (the default) No QRCode support - libarcode not required |
+--------------+--------------------------------------------------------------------------+
| USE_QRCODE=1 | QRCode support enabled |
+--------------+--------------------------------------------------------------------------+
2011-06-14 08:13:29 +02:00
Berkely DB version warning
==========================
2011-07-07 21:19:25 +02:00
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** ).
2011-06-14 08:13:29 +02:00
2011-10-14 17:06:57 +02:00
The static binary version of Bitcoin is linked against libdb4.8 (see also `this Debian issue`_ ).
2011-06-14 08:13:29 +02:00
2011-09-18 11:55:41 +02:00
Now the nasty thing is that databases from 5.X are not compatible with 4.X.
2011-06-14 08:13:29 +02:00
If the globally installed development package of Berkely DB installed on your system is 5.X, any source you
2011-09-18 11:55:41 +02:00
build yourself will be linked against that. The first time you run with a 5.X version the database will be upgraded,
2011-06-14 08:13:29 +02:00
and 4.X cannot open the new format. This means that you cannot go back to the old statically linked version without
significant hassle!
.. _`this Debian issue`: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=621425
2011-10-25 01:21:28 +02:00
Ubuntu 11.10 warning
====================
Ubuntu 11.10 has a package called 'qt-at-spi' installed by default. At the time of writing, having that package
installed causes bitcoin-qt to crash intermittently. The issue has been reported as `launchpad bug 857790`_ , but
isn't yet fixed.
Until the bug is fixed, you can remove the qt-at-spi package to work around the problem, though this will presumably
disable screen reader functionality for Qt apps:
::
sudo apt-get remove qt-at-spi
.. _`launchpad bug 857790`: https://bugs.launchpad.net/ubuntu/+source/qt-at-spi/+bug/857790