0

Hey everything has usually been fine compiling from source until i updated to Ubuntu 17.10

I've configured using --disable-wallet and i'm using the most up to date master branch

chris@chris-GE60-2PL:~/bitcoin$ sudo make
Making all in src
make[1]: Entering directory '/home/chris/bitcoin/src'
make[2]: Entering directory '/home/chris/bitcoin/src'
make[3]: Entering directory '/home/chris/bitcoin'
cd . && /bin/bash ./config.status src/config/bitcoin-config.h
config.status: creating src/config/bitcoin-config.h
config.status: src/config/bitcoin-config.h is unchanged
make[3]: Leaving directory '/home/chris/bitcoin'
make[3]: Entering directory '/home/chris/bitcoin'
make[3]: Leaving directory '/home/chris/bitcoin'
make[3]: Entering directory '/home/chris/bitcoin/src/secp256k1'
make[3]: Leaving directory '/home/chris/bitcoin/src/secp256k1'
  CXX      libbitcoin_util_a-clientversion.o
  AR       libbitcoin_util.a
  CXXLD    bitcoind
  CXXLD    bitcoin-cli
  CXXLD    bitcoin-tx
  CXXLD    test/test_bitcoin
  CXXLD    bench/bench_bitcoin
  CXX      qt/qt_libbitcoinqt_a-moc_bitcoingui.o
qt/moc_bitcoingui.cpp: In static member function ‘static void 
BitcoinGUI::qt_static_metacall(QObject*, QMetaObject::Call, int, 
void**)’:
qt/moc_bitcoingui.cpp:217:21: error: ‘class BitcoinGUI’ has no member 
named ‘setEncryptionStatus’; did you mean ‘setDockOptions’?
         case 6: _t->setEncryptionStatus((*reinterpret_cast< int(*)>
(_a[1]))); break;
                     ^~~~~~~~~~~~~~~~~~~
                     setDockOptions
qt/moc_bitcoingui.cpp:218:21: error: ‘class BitcoinGUI’ has no member 
named ‘setHDStatus’; did you mean ‘setStatusBar’?
         case 7: _t->setHDStatus((*reinterpret_cast< int(*)>(_a[1]))); 
break;
                     ^~~~~~~~~~~
                     setStatusBar
qt/moc_bitcoingui.cpp:219:33: error: ‘class BitcoinGUI’ has no member 
named ‘handlePaymentRequest’
         case 8: { bool _r = _t-
>handlePaymentRequest((*reinterpret_cast< const SendCoinsRecipient(*)>
(_a[1])));
                                 ^~~~~~~~~~~~~~~~~~~~
qt/moc_bitcoingui.cpp:221:21: error: ‘class BitcoinGUI’ has no member 
named ‘incomingTransaction’
         case 9: _t->incomingTransaction((*reinterpret_cast< const 
QString(*)>(_a[1])),(*reinterpret_cast< int(*)>(_a[2])),
(*reinterpret_cast< const CAmount(*)>(_a[3])),(*reinterpret_cast< 
const QString(*)>(_a[4])),(*reinterpret_cast< const QString(*)>
(_a[5])),(*reinterpret_cast< const QString(*)>(_a[6]))); break;
                     ^~~~~~~~~~~~~~~~~~~
qt/moc_bitcoingui.cpp:222:22: error: ‘class BitcoinGUI’ has no member 
named ‘gotoOverviewPage’
         case 10: _t->gotoOverviewPage(); break;
                      ^~~~~~~~~~~~~~~~
qt/moc_bitcoingui.cpp:223:22: error: ‘class BitcoinGUI’ has no member 
named ‘gotoHistoryPage’
         case 11: _t->gotoHistoryPage(); break;
                      ^~~~~~~~~~~~~~~
qt/moc_bitcoingui.cpp:224:22: error: ‘class BitcoinGUI’ has no member 
named ‘gotoReceiveCoinsPage’
         case 12: _t->gotoReceiveCoinsPage(); break;
                      ^~~~~~~~~~~~~~~~~~~~
qt/moc_bitcoingui.cpp:225:22: error: ‘class BitcoinGUI’ has no member 
named ‘gotoSendCoinsPage’
         case 13: _t->gotoSendCoinsPage((*reinterpret_cast< 
QString(*)>(_a[1]))); break;
                     ^~~~~~~~~~~~~~~~~
qt/moc_bitcoingui.cpp:226:22: error: ‘class BitcoinGUI’ has no member 
named ‘gotoSendCoinsPage’
        case 14: _t->gotoSendCoinsPage(); break;
                      ^~~~~~~~~~~~~~~~~
qt/moc_bitcoingui.cpp:227:22: error: ‘class BitcoinGUI’ has no member 
named ‘gotoSignMessageTab’
         case 15: _t->gotoSignMessageTab((*reinterpret_cast< 
QString(*)>(_a[1]))); break;
                      ^~~~~~~~~~~~~~~~~~
qt/moc_bitcoingui.cpp:228:22: error: ‘class BitcoinGUI’ has no member 
named ‘gotoSignMessageTab’
         case 16: _t->gotoSignMessageTab(); break;
                      ^~~~~~~~~~~~~~~~~~
qt/moc_bitcoingui.cpp:229:22: error: ‘class BitcoinGUI’ has no member 
named ‘gotoVerifyMessageTab’
         case 17: _t->gotoVerifyMessageTab((*reinterpret_cast< 
QString(*)>(_a[1]))); break;
                      ^~~~~~~~~~~~~~~~~~~~
qt/moc_bitcoingui.cpp:230:22: error: ‘class BitcoinGUI’ has no member 
named ‘gotoVerifyMessageTab’
         case 18: _t->gotoVerifyMessageTab(); break;
                      ^~~~~~~~~~~~~~~~~~~~
qt/moc_bitcoingui.cpp:231:22: error: ‘class BitcoinGUI’ has no member named ‘openClicked’; did you mean ‘optionsClicked’?
     case 19: _t->openClicked(); break;
                  ^~~~~~~~~~~
                      optionsClicked
Makefile:7129: recipe for target 'qt/qt_libbitcoinqt_a-moc_bitcoingui.o' 
failed
make[2]: *** [qt/qt_libbitcoinqt_a-moc_bitcoingui.o] Error 1
make[2]: Leaving directory '/home/chris/bitcoin/src'
Makefile:9361: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/home/chris/bitcoin/src'
Makefile:746: recipe for target 'all-recursive' failed
make: *** [all-recursive] Error 1
2
  • Can you please clarify what exactly you're asking... is it how to fix the error? Oct 31, 2017 at 0:49
  • Welcome to Bitcoin.SE! Can you please state what platform you are compiling for?
    – Willtech
    Mar 3, 2018 at 6:27

2 Answers 2

2

Do make clean then rebuild.

If that doesn't work, reconfigure (./autogen.sh and ./configure) then make clean again, then make.

0

It is usually better to build a tagged version than from just off the top of master which may have additional changes.

More recently there were some dependancy changes[1].

In the /bitcoin directory you need to:

sudo apt install zlib1g-dev
git clean -fdx

Get on the master branch:

git checkout master

Pull down the current master including tags. Depending on how you are configured, how to do this will vary but could be as simple as git pull origin --tags

Then, you should definitely check out a tagged version. The current highest tagged version as of writing is v0.16.0 - you can check what tags exist with git tag - I usually do that this way into a branch:

git checkout v0.16.0 -b v016

Then, follow the specific build instructions in /bitcoin/doc/*.md. For example, Ubuntu 17.04 is specifically supported in build-unix.md

rel:
[1] github.com - "Ok, I've identified the issue. It is because one of the dependencies ..." - https://github.com/bitcoin/bitcoin/issues/12515#issuecomment-368283657

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.