AudioCoin-qt: Qt5 GUI for Audiocoin
First, make sure that the required packages for Qt5 development of your distribution are installed, for Debian and Ubuntu these are:
An executable named audiocoin-qt will be built.
Install libssl1.0-dev instead of libssl-dev
sudo apt-get update sudo apt-get upgrade sudo apt-get install git sudo apt-get install build-essential sudo apt-get install libssl-dev sudo apt-get install libdb++-dev sudo apt-get install libboost-all-dev sudo apt-get install libqrencode-dev sudo apt-get install qt5-default sudo apt-get install qt5-qmake sudo apt-get install qtbase5-dev-tools sudo apt-get install qttools5-dev-tools sudo apt-get install libboost-dev sudo apt-get install libboost-system-dev sudo apt-get install libboost-filesystem-dev sudo apt-get install libboost-program-options-dev sudo apt-get install libboost-thread-dev sudo apt-get install libminiupnpc-dev
Clone the AudioCoin source using git
- git clone https://github.com/aurovine/AudioCoin.git
cd into the AudioCoin directory
- cd AudioCoin/
then execute the following:
Windows build instructions:
- Download the QT Windows SDK and install it. You don't need the Symbian stuff, just the desktop Qt.
- Compile openssl, boost and dbcxx.
- Open the .pro file in QT creator and build as normal (ctrl-B)
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 sudo port install boost db48 miniupnpc
- Open the .pro file in Qt Creator and build as normal (cmd-B)
Build configuration options
UPNnP port forwarding
To use UPnP for port forwarding behind a NAT router (recommended, as more connections overall allow for a faster and more stable audiocoin experience), pass the following argument to qmake:
(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 http://miniupnp.tuxfamily.org/files/. UPnP support is not compiled in by default.
Set USE_UPNP to a different value to control this:
|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.|
Notification support for recent (k)ubuntu versions
To see desktop notifications on (k)ubuntu versions starting from 10.04, enable usage of the FreeDesktop notification interface through DBUS using the following qmake option:
Generation of QR codes
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 flag to qmake to control this:
|USE_QRCODE=0||(the default) No QRCode support - libarcode not required|
|USE_QRCODE=1||QRCode support enabled|
Berkely DB version warning
A warning for people using the static binary version of AudioCoin on a Linux/UNIX-ish system (tl;dr: Berkely DB databases are not forward compatible).
The static binary version of AudioCoin is linked against libdb 5.0 (see also this Debian issue).
Now the nasty thing is that databases from 5.X are not compatible with 4.X.
If the globally installed development package of Berkely DB installed on your system is 5.X, any source you build yourself will be linked against that. The first time you run with a 5.X version the database will be upgraded, and 4.X cannot open the new format. This means that you cannot go back to the old statically linked version without significant hassle!
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 Audiocoin-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