Hey, beim Kompilieren aus dem Quellcode war normalerweise alles in Ordnung, bis ich auf Ubuntu 17.10 aktualisiert habe
Ich habe mit --disable-wallet konfiguriert und verwende den aktuellsten Master-Zweig
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
Baue make clean
dann um.
Wenn das nicht funktioniert, konfigurieren Sie ( ./autogen.sh
und ./configure
) dann make clean
erneut, dann make
.
Es ist normalerweise besser, eine getaggte Version zu erstellen, als direkt von der Spitze des Masters aus, der möglicherweise zusätzliche Änderungen enthält.
In jüngerer Zeit gab es einige Abhängigkeitsänderungen [ 1 ] .
Im /bitcoin
Verzeichnis müssen Sie:
sudo apt install zlib1g-dev
git clean -fdx
Steigen Sie in den Master-Zweig ein:
git checkout master
Ziehen Sie den aktuellen Master einschließlich Tags herunter. Je nachdem, wie Sie konfiguriert sind, variiert die Vorgehensweise, könnte aber so einfach sein wiegit pull origin --tags
Dann sollten Sie sich unbedingt eine getaggte Version ansehen. Die aktuelle Version mit den höchsten Tags zum Zeitpunkt des Schreibens ist v0.16.0 - Sie können überprüfen, welche Tags vorhanden sind git tag
- ich mache das normalerweise so in einen Zweig:
git checkout v0.16.0 -b v016
Befolgen Sie dann die spezifischen Build-Anweisungen in /bitcoin/doc/*.md
. Beispielsweise wird Ubuntu 17.04 speziell in unterstütztbuild-unix.md
rel:
[ 1 ] github.com – „Ok, ich habe das Problem identifiziert. Es liegt daran, dass eine der Abhängigkeiten …“ – https://github.com/bitcoin/bitcoin/issues/12515#issuecomment-368283657
Sehr unregelmäßig
Willtech