Feathercoin daemon and wallet production version 0.19.1
Old daemon and wallet version 0.18.3

Building feathercoin


  • Moderators | Tip Wellenreiter

    following 4 posts are moved from http://forum.feathercoin.com/topic/7843/


  • Regular Member | Tip curiosity81

    I am pissed: the documentation of building feathercoin is a real mess.

    What is my problem?

    I tried to build feathercoin-qt on Debian jessie. Yes, I could use binaries created by Wellenreiter. However, in doubtful situations, I prefer to build the binary by myself. So I cloned into the git repository and tried to make the binary.

    First, I could not build the binary via Qt4, because make could not find some Qt5-includes. Why??? I specified Qt4 when starting the configuration script, but no effect.

    So I tried to build it via Qt5, unfortunately, these STUPID zxing-headers are missing and THERE IS NO corresponding package for Debian 8 or even Ubuntu, also ZebraCrossing is not existend. Arghhhh, why do you put such dependencies, when they are not in the git-repository??? Are they even necessary for a base simple GUI???

    The solution, but a dirty one, was, to use the deb-file from Wellenreiter which only consists of headers. After almost finishing building, make complained about some tests which failed. Luckily, the binary was produced and is working.

    Again, the documentation for building feathercoin or feathercoin-qt is a mess. There is no hint where to find building information at the main page (https://www.feathercoin.com/#dls). And the stuff in the git-repository is not complete.

    It is quite likely, that, as dumb as I am, I have overseen crucial information … ich hab so einen Hals, sooo einen Hals, arghhhh 😠 !!!

    So I puked out enough my anger, my next post in a few minutes will be a manual which works on Debian 8. You can delete, keep or move it and comment, what I did wrongly. Thanks.


  • Moderators | Tip Wellenreiter

    I’m sorry that you had so much problems compiling the Gui.
    The code was originally adapted on a windows based system and Qt5. What really is missing is a hint, that the Qt4 config option is broken.
    Regarding the zxing dependency you either can try to run the configure script with option ‘use-qrencode=no’ or install the xzing library

    The later you can do either by using my pre-compiled binaries for libzxing available as installation packages for a number of Linux distributions at:

    https://software.opensuse.org/package/libzxing?search_term=libzxing (you need to check ‘unstable’ as libzxing is not part of the official distribution)
    or use the source code available at

    github: https://github.com/search?utf8=✓&q=zxing-cpp

    In any case, if you have problems to compile or install the feathercoin wallet place post in the support category of the forum and we will do your best to support you


  • Regular Member | Tip curiosity81

    This manual is for a i386-Debian 8-system (Jessie).

    Start via:

    sudo apt-get update

    Install some necessary packages, I am not sure what is really needed since this is stuff is needed for building namecoin-qt but maybe some of the feathercoin developers can enlighten me:

    sudo apt-get install libboost-chrono-dev libboost-date-time-dev libboost-filesystem-dev libboost-program-options-dev libboost-serialization-dev libboost-system-dev libboost-thread-dev libboost-dev libminiupnpc-dev git qt4-qmake libqt4-dev build-essential qt4-linguist-tools libssl-dev

    Install additional packages needed for feathercoin:

    sudo apt-get install libboost1.55-all-dev autogen dh-autoreconf pkg-config libqrencode-dev libprotobuf-dev protobuf-compiler qtbase5-dev libqt5core5a libqt5gui5 libqt5dbus5 qttools5-dev qttools5-dev-tools

    Now, suppose, that we are in

    /home/user/stuff

    We need Berkeley-DB 4.8 (do we???), get it:

    wget http://download.oracle.com/berkeley-db/db-4.8.30.NC.tar.gz
    echo "12edc0df75bf9abd7f82f821795bcee50f42cb2e5f76a6a281b85732798364ef db-4.8.30.NC.tar.gz" | sha256sum -c
    tar -xzvf db-4.8.30.NC.tar.gz

    Make directory for installing db-4.8 since we don’t want to install it in the system:

    mkdir /home/user/stuff/db-4.8

    Now, build db-4.8:

    cd db-4.8.30.NC/build_unix/
    ../dist/configure --enable-cxx --disable-shared --with-pic --prefix=/home/user/stuff/db-4.8
    make
    make install

    Get this stupid zxing-library which seems not to exist (sorry, but no other coin needs this):

    wget http://download.opensuse.org/repositories/home:/wellenreiter01/Debian_7.0/i386/libzxing_1.0-1.0_i386.deb
    dpkg -i libzxing_1.0-1.0_i386.deb

    (It only contains headers, alternatively one could install them via

    ar -x libzxing_1.0-1.0_i386.deb
    tar -xzvf data.tar.gz

    and then copying the headers to the corresponding place by hand.)

    Finally, we build feathercoin:

    git clone https://github.com/FeatherCoin/Feathercoin.git
    cd Feathercoin
    ./autogen.sh
    ./configure LDFLAGS="-L/home/user/stuff/db-4.8/lib/" CPPFLAGS="-I/home/user/stuff/db-4.8/include/" --with-boost-libdir=/usr/lib/i386-linux-gnu --with-gui=qt5
    make

    Building ends with an error message, but the feathercoin-qt binary should be located in src/qt.

    Good night.


  • Regular Member | Tip curiosity81

    @Wellenreiter

    My recommendations:

    1.) And MOST IMPORTANT, put some documentation to the source code part of the wallet page (https://www.feathercoin.com/#dls). In the moment one ends directly in the git repository. And I tried to build the current snapshot. E.g. what is a version guaranteed to work? Something like

    git clone https://github.com/FeatherCoin/Feathercoin.git
    cd Feathercoin
    git checkout <hash>

    would be nice.

    2.) Put sufficient information to doc/build-unix (and clearly also to the other OS’), e.g., “use-qrencode=no” is not part of the documentation. Also the connection between qrencode and zebracrossing is not obvious!

    3.) DO NOT HIDE this essential information in a forum. Might be possible that everything can be found here. However, people do not want to work through hundreds of posts until they find some potential solution to there problem.

    Thanks


  • Moderators | Tip Wellenreiter

    We will do our best to improve the documentation.
    @curiosity81 said:

    We need Berkeley-DB 4.8 (do we???), get it:

    The configure script checks for Berkeley-db 5.1 and 4.8 so this may not be needed


  • Regular Member | Tip curiosity81

    There is no configure parameter

    use-qrencode=no

    It is not accepting this, or

    -use-qrencode=no
    --use-qrencode=no

    It accepts

    --with-qrencode=no

    but configure ends with a warning that this parameter is unknown. I also tried combinations with libzxing and similar with no effect.


  • Regular Member | Tip curiosity81

    Ahhh … somewhere else you wrote, that building with no libzxing is done via

    --with-qrcode=no

    this seems to work. So the configuration call would look as follows:

    ./configure LDFLAGS="-L/home/user/stuff/db-4.8/lib/" CPPFLAGS="-I/home/user/stuff/db-4.8/include/" --with-boost-libdir=/usr/lib/i386-linux-gnu --with-gui=qt5 --with-qrcode=no


  • Regular Member | Tip curiosity81

    No! Did not work. Building ends with

    snapwidget.cpp:10:51: fatal error: zxing/common/GlobalHistogramBinarizer.h: No such file or directory
    #include "zxing/common/GlobalHistogramBinarizer.h"

    So in the moment one has to compile it with xzing …


  • Moderators | Tip Wellenreiter

    Too bad 😞

    Fixing autogen and configure scripts is not my favrourite as I’m not familiar with the macro language they use, but I will try to fix it.

    I see two problems here

    • the use-qrcode=no option is not set automatically if no libzxing or no qrencode library is found
    • even if you disable qrcode manually, the setting has no effect.

    It’s on my todo list now


  • Moderators | Tip wrapper

    Last time I built this from the guide for FTC, no problem.

    Unfortunately, the forum search, or the pinning of important pages has been lost with the move over to the more open source forum.

    I will continue to try to find that guide, and see if it still works on ubuntu 15.10

    • just making a suggestion to update the new site with link through to miner + guide, it would also be good to have a link on the download source page + guide thread to compile your own version . With little work, just updating what we got, this will save many support issues and most FAQ’s new members have.

    I’m also pretty sure a compile guide from namecoin might not be applicable, and we are doing work fixing their guide, better spent on FTC’s.


  • Moderators | Tip Wellenreiter

    @wrapper
    The forum search is still there, as well as the pinning functionality, which is availabe to moderators.

    For the forum search click on the magnifying-glass symbol in the upper right area of the page, left of the bell symbol.
    ‘Pin Topic’ can be found by operators under the Topic tools pull down


  • Regular Member | Tip curiosity81

    @wrapper Nope, Namecoin works differently: clone it from git, enter the directory, do qmake and then make. Done. Provided the dependencies are available.


  • Moderators | Tip Wellenreiter

    @curiosity81 said:

    @wrapper Nope, Namecoin works differently: clone it from git, enter the directory, do qmake and then make. Done. Provided the dependencies are available.

    That has been the case for Feathercoin, too up to version 0.8.7.X.
    These Versions used Qt4, so I assume that Namecoin ist build on Qt4.

    Since v0.9.x Feathercoin-Gui is build on Qt5 and the make process is different.

    You may have noticed, that the Qt4 verions of Feathercoin 0.9.X does abort with complie errors, so Qt5 is the only option available.


  • Regular Member | Tip curiosity81

    @curiosity81 Manual still works for the current version 0.9.6.0 of feathercoin-qt and there is no error message anymore.


Log in to reply