Forum Home
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Popular

    [Dev] Packaging feathercoind and feathercoin-qt on Linux

    Technical Development
    linux feathercoin release
    6
    45
    40579
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • Wellenreiter
      Wellenreiter Moderators last edited by

      Just a status update: I was occupied with other topics the last days.

      Will focus on Ubuntu next, as Debian 7 is using qt4 only, which is causing issues when compiling the GUI Version and Debian 8 has a broken build chain for cmake, making it impossible at the moment to compile libzxing in my environment

      Feathercoin development donation address: 6p8u3wtct7uxRGmvWr2xvPxqRzbpbcd82A
      Openpgp key: 0x385C34E77F0D74D7 (at keyserver.ubuntu.com)/fingerprint: C7B4 E9EA 17E1 3D12 07AB 1FDB 385C 34E7 7F0D 74D7

      1 Reply Last reply Reply Quote 1
      • Wellenreiter
        Wellenreiter Moderators last edited by Wellenreiter

        Broken build chain for Debian 8 fixed

        Packaging of libzxing for Debian 8 done.
        Packages are available at:
        https://build.opensuse.org/package/binaries/home:wellenreiter01/libzxing?repository=Debian_8.0

        Feathercoin development donation address: 6p8u3wtct7uxRGmvWr2xvPxqRzbpbcd82A
        Openpgp key: 0x385C34E77F0D74D7 (at keyserver.ubuntu.com)/fingerprint: C7B4 E9EA 17E1 3D12 07AB 1FDB 385C 34E7 7F0D 74D7

        1 Reply Last reply Reply Quote 1
        • Wellenreiter
          Wellenreiter Moderators last edited by Wellenreiter

          Packaging for Ubuntu is done.

          Feathercoin development donation address: 6p8u3wtct7uxRGmvWr2xvPxqRzbpbcd82A
          Openpgp key: 0x385C34E77F0D74D7 (at keyserver.ubuntu.com)/fingerprint: C7B4 E9EA 17E1 3D12 07AB 1FDB 385C 34E7 7F0D 74D7

          1 Reply Last reply Reply Quote 1
          • surfguy72
            surfguy72 Regular Member last edited by

            awesome!

            1 Reply Last reply Reply Quote 1
            • Wellenreiter
              Wellenreiter Moderators last edited by

              Some fine tuning still needs to be done and I need to describe how to add the repository to the sources list on the local PC.

              Feathercoin development donation address: 6p8u3wtct7uxRGmvWr2xvPxqRzbpbcd82A
              Openpgp key: 0x385C34E77F0D74D7 (at keyserver.ubuntu.com)/fingerprint: C7B4 E9EA 17E1 3D12 07AB 1FDB 385C 34E7 7F0D 74D7

              1 Reply Last reply Reply Quote 0
              • Wellenreiter
                Wellenreiter Moderators last edited by Wellenreiter

                Packaging of feathercoind and gui-wallet for Debian 8, 32 Bit done.

                Feathercoin development donation address: 6p8u3wtct7uxRGmvWr2xvPxqRzbpbcd82A
                Openpgp key: 0x385C34E77F0D74D7 (at keyserver.ubuntu.com)/fingerprint: C7B4 E9EA 17E1 3D12 07AB 1FDB 385C 34E7 7F0D 74D7

                1 Reply Last reply Reply Quote 1
                • Wellenreiter
                  Wellenreiter Moderators last edited by

                  Packaging of feathercoind and gui-wallet for Debian 8, 64 Bit done. Packages are available upon request.

                  Feathercoin development donation address: 6p8u3wtct7uxRGmvWr2xvPxqRzbpbcd82A
                  Openpgp key: 0x385C34E77F0D74D7 (at keyserver.ubuntu.com)/fingerprint: C7B4 E9EA 17E1 3D12 07AB 1FDB 385C 34E7 7F0D 74D7

                  1 Reply Last reply Reply Quote 1
                  • Wellenreiter
                    Wellenreiter Moderators last edited by Wellenreiter

                    As Version 0.9.3 was released today the Installation packages (.rpm / .deb) are made available here under ‘unstable’ as the packages are not part of the official distributions.

                    Updated also the status post above

                    Feathercoin development donation address: 6p8u3wtct7uxRGmvWr2xvPxqRzbpbcd82A
                    Openpgp key: 0x385C34E77F0D74D7 (at keyserver.ubuntu.com)/fingerprint: C7B4 E9EA 17E1 3D12 07AB 1FDB 385C 34E7 7F0D 74D7

                    1 Reply Last reply Reply Quote 2
                    • Wellenreiter
                      Wellenreiter Moderators last edited by Wellenreiter

                      2015/10/31

                      • packaging of feathercoind and gui-wallet for Fedora 20 64 and 32 bit done. Packages are available here under ‘unstable’ as the packages are not part of the official distribution
                      • packaging of feathercoind and gui-wallet for Fedora 21, 64 and 32 bit done. Packages are available here under ‘unstable’ as the packages are not part of the official distribution
                      • packaging of feathercoind and gui-wallet for Fedora 22, 64 and 32 bit done. Packages are available here under ‘unstable’ as the packages are not part of the official distribution
                      • packaging of feathercoind and gui-wallet for OpenSuSE 13.2 , 64 and 32 bit done. Packages are available here under ‘unstable’ as the packages are not part of the official distribution

                      Feathercoin development donation address: 6p8u3wtct7uxRGmvWr2xvPxqRzbpbcd82A
                      Openpgp key: 0x385C34E77F0D74D7 (at keyserver.ubuntu.com)/fingerprint: C7B4 E9EA 17E1 3D12 07AB 1FDB 385C 34E7 7F0D 74D7

                      1 Reply Last reply Reply Quote 1
                      • wrapper
                        wrapper Moderators last edited by

                        Just a note that Feathercoin name is available for the Opensuse build service, might be worth having the Official builds there …

                        http://download.opensuse.org/repositories/home:/

                        1 Reply Last reply Reply Quote 0
                        • wrapper
                          wrapper Moderators last edited by wrapper

                          Building 0.8.7.3 and 0.9.3.1 on Ubuntu

                          Build service errors

                          Currently I get this error messages:

                          CXX rpcrawtransaction.o
                          [ 590s] In file included from /usr/include/boost/move/detail/type_traits.hpp:34:0,
                          [ 590s] from /usr/include/boost/move/core.hpp:54,
                          [ 590s] from /usr/include/boost/move/utility_core.hpp:29,
                          [ 590s] from /usr/include/boost/move/utility.hpp:28,
                          [ 590s] from /usr/include/boost/thread/detail/move.hpp:27,
                          [ 590s] from /usr/include/boost/thread/lock_types.hpp:11,
                          [ 590s] from /usr/include/boost/thread/pthread/mutex.hpp:16,
                          [ 590s] from /usr/include/boost/thread/mutex.hpp:16,
                          [ 590s] from allocators.h:13,
                          [ 590s] from serialize.h:9,
                          [ 590s] from bignum.h:9,
                          [ 590s] from chainparams.h:9,
                          [ 590s] from base58.h:17,
                          [ 590s] from rpcrawtransaction.cpp:6:
                          [ 590s] /usr/include/boost/variant/get.hpp: In instantiation of ‘typename boost::add_reference<T>::type boost::strict_get(boost::variant<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19>&) [with U = const CScriptID&; T0 = CNoDestination; T1 = CKeyID; T2 = CScriptID; T3 = CStealthAddress; T4 = boost::detail::variant::void_; T5 = boost::detail::variant::void_; T6 = boost::detail::variant::void_; T7 = boost::detail::variant::void_; T8 = boost::detail::variant::void_; T9 = boost::detail::variant::void_; T10 = boost::detail::variant::void_; T11 = boost::detail::variant::void_; T12 = boost::detail::variant::void_; T13 = boost::detail::variant::void_; T14 = boost::detail::variant::void_; T15 = boost::detail::variant::void_; T16 = boost::detail::variant::void_; T17 = boost::detail::variant::void_; T18 = boost::detail::variant::void_; T19 = boost::detail::variant::void_; typename boost::add_reference<T>::type = const CScriptID&]’:
                          [ 590s] /usr/include/boost/variant/get.hpp:284:25: required from ‘typename boost::add_reference<T>::type boost::get(boost::variant<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19>&) [with U = const CScriptID&; T0 = CNoDestination; T1 = CKeyID; T2 = CScriptID; T3 = CStealthAddress; T4 = boost::detail::variant::void_; T5 = boost::detail::variant::void_; T6 = boost::detail::variant::void_; T7 = boost::detail::variant::void_; T8 = boost::detail::variant::void_; T9 = boost::detail::variant::void_; T10 = boost::detail::variant::void_; T11 = boost::detail::variant::void_; T12 = boost::detail::variant::void_; T13 = boost::detail::variant::void_; T14 = boost::detail::variant::void_; T15 = boost::detail::variant::void_; T16 = boost::detail::variant::void_; T17 = boost::detail::variant::void_; T18 = boost::detail::variant::void_; T19 = boost::detail::variant::void_; typename boost::add_reference<T>::type = const CScriptID&]’
                          [ 590s] rpcrawtransaction.cpp:299:77: required from here
                          [ 590s] /usr/include/boost/variant/get.hpp:178:5: error: invalid application of ‘sizeof’ to incomplete type ‘boost::STATIC_ASSERTION_FAILURE<false>’
                          [ 590s] BOOST_STATIC_ASSERT_MSG(
                          [ 590s] ^

                          The same code is compiling fine on Ubuntu 15.04, Debian 8 and other distributions.

                          Possible answers being looked at :

                          Just reading about a similar problem compiling :

                          I think that the problem is that you put #ifdef instead of #ifndef at the top of your header.h file

                          a search for what includes boost showed - checkpoints.h

                          Which is a likely area for an error as it is included code for FTC. However, I can’t see a logical error in variable definition there, yet …

                          https://github.com/FeatherCoin/Feathercoin/blob/0.9.3.1/src/checkpoints.h

                          Also note https://github.com/FeatherCoin/Feathercoin/blob/0.9.3.1/src/rpcprotocol.cpp

                          last change was to fix compile error …

                          Also noted libqt5core5a replaces libqt5core5 mentioned in master-0.8/doc/readme-qt.rst

                          1 Reply Last reply Reply Quote 0
                          • wrapper
                            wrapper Moderators last edited by wrapper

                            7230328 Jun 8 20:55

                            feathercoin-qt 0.8.7.3 now compiles for me under Kubuntu 15.10

                            Method :
                            Installing the 12.04 dependencies from master-0.8/doc/readme-qt.rst

                            A Library has changed name and become libqt5core5a, install that

                            qmake
                            make

                            1 Reply Last reply Reply Quote 0
                            • wrapper
                              wrapper Moderators last edited by wrapper

                              Tried to register the Feathercoin name on opensuse build service but it has been taken (and abandoned ) by aduffeck@suse.de

                              Gonna contact him to get the name.

                              1 Reply Last reply Reply Quote 0
                              • wrapper
                                wrapper Moderators last edited by wrapper

                                Building Feathercoind

                                0.8.7.3 - buildunit.txt

                                sudo apt-get install libboost1.37-dev fails

                                In Kubuntu 15.10 this is now libboost1.58-dev

                                warning during compile :

                                main.cpp: In function ‘bool ProcessBlock(CValidationState&, CNode*, CBlock*, CDiskBlockPos*)’:
                                main.cpp:2374:150: warning: format ‘%u’ expects argument of type ‘unsigned int’, but argument 2 has type ‘int64 {aka long long int}’ [-Wformat=]
                                return error(“ProcessBlock() : block has a time stamp of %u before the last checkpoint of %u”, pblock->GetBlockTime(), pcheckpoint->nTime);

                                feathercoind builds

                                This is the code at line 2374 main.cpp

                                    if((pblock->GetBlockTime() - pcheckpoint->nTime) < 0) {
                                        if(pfrom) pfrom->Misbehaving(100);
                                        return error("ProcessBlock() : block has a time stamp of %u before the last checkpoint of %u", pblock->GetBlockTime(), pcheckpoint->nTime);
                                    }
                                
                                    // Here was some code to verify block difficulty upon block and checkpoint
                                    // time difference which had never worked well in general and was broken
                                    // across the hard forks for Feathercoin in particular
                                

                                Note: ProcessBlock()

                                There is a mismatch to how ProcessBlock is called in main and rpcmining.cpp - it looks like there is a bug in main.cpp should be &pblock …

                                src/miner.cpp
                                Showing the top match. Last indexed on 21 Mar.
                                // Process this block the same as if we had received it from another node
                                CValidationState state;
                                if (!ProcessBlock(state, NULL, pblock))
                                return error(“FeathercoinMiner : ProcessBlock, block not accepted”);
                                }

                                return true;
                                }

                                src/rpcmining.cpp
                                Showing the top match. Last indexed on 21 Mar.
                                throw JSONRPCError(RPC_DESERIALIZATION_ERROR, “Block decode failed”);
                                }

                                CValidationState state;
                                bool fAccepted = ProcessBlock(state, NULL, &pblock);
                                if (!fAccepted)

                                1 Reply Last reply Reply Quote 0
                                • wrapper
                                  wrapper Moderators last edited by wrapper

                                  Building feathercoin-qt 0.9.3.1 on Kubuntu 15.10

                                  ./autogen.sh
                                  ./configure
                                  make

                                  error : ./autogen.sh: 3: ./autogen.sh: autoreconf: not found

                                  apt-get install dh-autoreconf

                                  autoupdate

                                  ./configure --with-incompatible-bdb

                                  make

                                  fails with error :

                                  /usr/include/boost/variant/get.hpp:178:5: error: invalid application of ‘sizeof’ to incomplete type ‘boost::STATIC_ASSERTION_FAILURE<false>’
                                  BOOST_STATIC_ASSERT_MSG(
                                  ^

                                  Found this post : scatha

                                  Re: Error Compiling Zetacoin Ubuntu
                                  January 29, 2016, 08:41:47 AMI have similar problems with various coins- the solution is usually I try a different version of boost-devel, make clean and recompile.


                                  Seems Boost 1.58 is the probable cause : – Found this post

                                  Considering that boost 1.59 seems fine with the code, I’d go for:

                                  if((${Boost_MAJOR_VERSION} EQUAL 1) AND (${Boost_MINOR_VERSION} EQUAL 58))
                                  message( STATUS “Defining BOOST_VARIANT_USE_RELAXED_GET_BY_DEFAULT”)
                                  add_definitions(“-DBOOST_VARIANT_USE_RELAXED_GET_BY_DEFAULT”)
                                  endif()

                                  just after the find_package( Boost … ) in the main CMakeLists.txt


                                  Looks like there was a PPA to get the latest Boost version : will continue tomorrow…

                                  https://codeyarns.com/2013/12/27/how-to-upgrade-the-boost-library-on-ubuntu/


                                  Found this :

                                  https://github.com/icook/zmark/commit/40ddb16a05c703c7cd9dce10f3aef09c0679e3d3

                                  Edited line 299 of rpcrawtransaction.cpp

                                  from
                                  const CScriptID& hash = boost::get<const CScriptID&>(address);

                                  to
                                  const CScriptID& hash = boost::get<CScriptID>(address);


                                  Continues further with build then error :

                                  shiftdialog.cpp:28:23: fatal error: QJsonObject: No such file or directory


                                  Installed libzxing libqrencode-dev qtbase5-dev libqt5opengl5-dev


                                  Now build fails with new error :

                                  CXX libbitcoinqt_a-shiftdialog.o
                                  shiftdialog.cpp:28:23: fatal error: QJsonObject: No such file or directory
                                  compilation terminated.


                                  Found similar problem compiling MInt

                                  There must be a newer version of that object files other than the one supplied with mint. The version table ends at GLIBCXX_3.4.19

                                  Code: Select all
                                  objdump -x /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.19|grep ‘GLIBCXX_3.4.1’

                                  Tried : Install libstdc+±5 (4.9 installed) build failed


                                  Found another similar Mint problem @Wellenreiter worked on :

                                  https://bitcointalk.org/index.php?topic=178286.msg13823798#msg13823798

                                  qtbas5-dev appears to be installed correctly…

                                  QJsonObject: The compiler misses the file qjasonobject.h
                                  As Mint is a kind of special flavor of Ubuntu I checked the Ubuntu packages.
                                  You need to install the package qtbase5-dev. That package contains qjsonobject.h as you can see here:
                                  http://packages.ubuntu.com/wily/amd64/qtbase5-dev/filelist

                                  QtPrintSupport/QPrinter: The compiler misses the file qprinter.h
                                  Again, the package qtbase5-dev contains the header files for QtPrintSupport.
                                  If you have installed qtbase5-dev, check for the directories containing qprinter.h and qjsonobject.h
                                  and specifiy these directories for the configure script. Use ‘configure --help’ for syntax.

                                  Searched for qjsonobject.h and qjsonobject.h not found


                                  Found This : https://bugreports.qt.io/browse/QTBUG-27096 :

                                  All instances of “#include <QPrinter>” or “#include <QPrintDialog>” that I had in my Qt4 project must now be replaced by “#include <Qt/qprinter.h>” or “#include <Qt/qprintdialog.h>”, which is not Qt standard.

                                  Edit :
                                  src/qt/utilitydialog.cpp

                                  Actual position of Qt printer headers in Ubuntu 15.10 :
                                  /usr/include/x86_64-linux-gnu/qt5/QtPrintSupport/qprinter.h
                                  usr/include/x86_64-linux-gnu/qt5/QtPrintSupport/qprintdialog.h

                                  Try - Change lines including utilitydialog.cpp headers include from :

                                  // Use QT5’s new modular classes
                                  #include <QtPrintSupport/QPrinter>
                                  #include <QtPrintSupport/QPrintDialog>
                                  #include <QtPrintSupport/QPrintPreviewDialog>

                                  Change lines in utilitydialog.cpp to :
                                  // Use QT5’s new modular classes
                                  #include <QtPrintSupport/qprinter.h>
                                  #include <QtPrintSupport/qprintdialog.h>
                                  #include <QtPrintSupport/qprintpreviewdialog.h>

                                  build error :

                                  CXX libbitcoinqt_a-notificator.o
                                  CXX libbitcoinqt_a-optionsdialog.o
                                  In file included from optionsdialog.cpp:17:0:

                                  CXX libbitcoinqt_a-shiftdialog.o
                                  shiftdialog.cpp:28:23: fatal error: QJsonObject: No such file or directory
                                  compilation terminated.


                                  from : https://bugreports.qt.io/browse/QTBUG-27096
                                  Did you add QT += printsupport in the pro file?
                                  It should work that way. Please let me know if you still have problems.

                                  Can’t find feathercoin.pro in 0.9.3.1 release source.


                                  Back to basics ran full instructions :

                                  qmake failed

                                  so ran full build with qmake -project :

                                  make clean
                                  ./autogen.sh
                                  autoupdate
                                  ./configure --with-incompatible-bdb
                                  qmake -project
                                  make


                                  Added QT += printsupport to feathercoin.pro file as suggested here :

                                  https://bugreports.qt.io/browse/QTBUG-27096

                                  Caused early crash of compile with error :

                                  make[5]: Entering directory ‘/home/tony/programs/Feathercoin/src/qt’
                                  CXX libbitcoinqt_a-shiftdialog.o
                                  shiftdialog.cpp:28:23: fatal error: QJsonObject: No such file or directory
                                  compilation terminated.
                                  Makefile:1509: recipe for target ‘libbitcoinqt_a-shiftdialog.o’ failed
                                  make[5]: *** [libbitcoinqt_a-shiftdialog.o] Error 1

                                  edited utiltydialog.cpp to try a different “full path” to Qt “problem” libraries.

                                  // Use QT5’s new modular classes
                                  #include <QtPrintSupport/QPrinter>
                                  #include <QtPrintSupport/QPrintDialog>
                                  #include <QtPrintSupport/QPrintPreviewDialog>
                                  #include <QtGui/QPainter>
                                  #include “walletmodel.h”

                                  // Use QT5’s new modular classes
                                  #include <QtPrintSupport/qprinter.h>
                                  #include <QtPrintSupport/qprintdialog.h>
                                  #include <QtPrintSupport/qprintpreviewdialog.h>
                                  #include <QtGui/QPainter>
                                  #include “walletmodel.h”

                                  Tried compile with modified headed and …/configure --with-incompatible-bdb --enable-dependency-tracking

                                  build failed.

                                  1 Reply Last reply Reply Quote 1
                                  • Wellenreiter
                                    Wellenreiter Moderators last edited by

                                    too much in one post.

                                    • qjasonobject:
                                      • is available with qt5 only. I’m not sure, which qt-package I installed to get it, if it is not the one I mentioned in the other thread
                                    • feathercoin.pro
                                      • doesn’t exist and is not needed for qt5 based compiles

                                    I will try to build for Ubuntu 15.10 and 6.04 with your modification in rpcrawtransaction.cpp. May be I also will try to change the dependency for boost lib to boost <= 1.59

                                    Feathercoin development donation address: 6p8u3wtct7uxRGmvWr2xvPxqRzbpbcd82A
                                    Openpgp key: 0x385C34E77F0D74D7 (at keyserver.ubuntu.com)/fingerprint: C7B4 E9EA 17E1 3D12 07AB 1FDB 385C 34E7 7F0D 74D7

                                    1 Reply Last reply Reply Quote 1
                                    • wrapper
                                      wrapper Moderators last edited by wrapper

                                      Don’t worry about the post yet, all is negative. Just documenting what I’ve tried, so Aciddude doesn’t duplicate effort…

                                      Still got a couple more things to grind through. I am starting to run out of ideas to try tho’.

                                      Trying to Install 1.59 is next on my list, I couldn’t easily find a PPA . (There is a bug in 1.58)

                                      That sounds like the easiest fix, now all know mods have been tried. If it worked, it would use the same code, so no special mods needed.

                                      1 Reply Last reply Reply Quote 0
                                      • wrapper
                                        wrapper Moderators last edited by wrapper

                                        Now we have the 0.8.7.3 build for Ubuntu is it more sensible to move to (testing) 0.11?

                                        and if 0.8.7.3 and 0.9.3.1 compile on 16.04?

                                        The problem does seem to be a glitch with libboost1.58-all-dev on Ubuntu 15.10 anyway. It seems to be a system dependancy.

                                        I’ve exhausted workarounds to try for the moment.

                                        1 Reply Last reply Reply Quote 0
                                        • Wellenreiter
                                          Wellenreiter Moderators last edited by

                                          I’d prefer to keep the 0.11.x versions on the testnet.
                                          Nevertheless @Lizhi ist using 0.11.2 on the prodnet. I asked him to specify his needs for the testnet, e.g. client versions to test compability and switch over to protocol version 4, but he didn’t come back to me.

                                          May be I can spare some time to try the build on ubuntu 16.04… but… it’s my wifes Birthday next Sunday, so probably I’ll have other duties :d

                                          Feathercoin development donation address: 6p8u3wtct7uxRGmvWr2xvPxqRzbpbcd82A
                                          Openpgp key: 0x385C34E77F0D74D7 (at keyserver.ubuntu.com)/fingerprint: C7B4 E9EA 17E1 3D12 07AB 1FDB 385C 34E7 7F0D 74D7

                                          1 Reply Last reply Reply Quote 1
                                          • U
                                            UnklAdM Regular Member last edited by UnklAdM

                                            I’ve got a dev box at home with 14.04 LTS installed on it. Would getting this working on that help at all? If so, what version should I try?

                                            I managed to get my primary wallet running on Centos 7 but that was a totally different scenario.

                                            Just trying to help out, the wife passed 6 weeks ago and I’m trying to keep busy. I’ve been pretty active with Syscoin lately so a lot of this is pretty fresh to me.

                                            - UnklAdM

                                            wrapper 1 Reply Last reply Reply Quote 1
                                            • First post
                                              Last post