Получение той же ошибки при сборке биткойнда в Mac OS X

Итак, я нахожусь в документах для создания биткойнда для OS X: https://github.com/bitcoin/bitcoin/blob/master/doc/build-osx.md и у меня была одна и та же ошибка каждый раз, когда я пытаюсь собрать. Вот шаги, которые я делаю:

brew install autoconf automake berkeley-db4 libtool boost miniupnpc openssl pkg-config protobuf qt5

git clone https://github.com/bitcoin/bitcoin.git
cd bitcoin

./autogen.sh
./configure --with-gui=qt5
make

и вот ошибка, которую я получаю:

OBJCXXLD qt/bitcoin-qt
clang: error: unknown argument: '-framework QtNetwork'
clang: error: unknown argument: '-framework QtWidgets'
clang: error: unknown argument: '-framework QtGui'
clang: error: unknown argument: '-framework QtCore'
clang: error: unknown argument: '-framework QtDBus'
clang: error: unknown argument: '-framework QtCore'
make[2]: *** [qt/bitcoin-qt] Error 1
make[1]: *** [check-recursive] Error 1
make: *** [check-recursive] Error 1

Я гуглил уже больше суток. Я вручную загрузил Qt с открытым исходным кодом здесь: http://www.qt.io/download-open-source/, У меня есть qt и qt5, установленные через brew и т. Д. Я не настолько знаком с C / C ++ и компиляцией кода и не знаю, что делать дальше. заранее спасибо

3

Решение

Прежде всего попробуйте создать биткойн без GUI:

make clean
./configure --without-gui
make
2

Другие решения

У меня была та же ошибка … Я исправил это, вручную редактируя Makefile

Проблема в QT_DBUS_LIBS, QT_LIBS and QT_TEST_LIBS определения ниже … -F flag and -framework является причиной проблемы.

QT_DBUS_LIBS = -F/usr/local/Cellar/qt5/5.5.0/lib -framework\ QtDBus -F/usr/local/Cellar/qt5/5.5.0/lib -framework\ QtCore
QT_LIBS = -F/usr/local/Cellar/qt5/5.5.0/lib/QtNetwork -F/usr/local/Cellar/qt5/5.5.0/lib -framework\ QtWidgets -F/usr/local/Cellar/qt5/5.5.0/lib -framework\ QtGui -F/usr/local/Cellar/qt5/5.5.0/lib -framework\ QtCore  -framework Foundation -framework ApplicationServices -framework AppKit
QT_TEST_LIBS = -F/usr/local/Cellar/qt5/5.5.0/lib -framework\ QtTest -F/usr/local/Cellar/qt5/5.5.0/lib -framework\ QtCore

Замените эти имена библиотек прямыми ссылками на библиотеку … сначала вы должны найти путь к библиотеке Qt, мой был по адресу /usr/local/Cellar/qt5/5.5.0/lib

QT_DBUS_LIBS = /usr/local/Cellar/qt5/5.5.0/lib/QtDBus.framework/QtDBus /usr/local/Cellar/qt5/5.5.0/lib/QtCore.framework/QtCore
QT_LIBS = /usr/local/Cellar/qt5/5.5.0/lib/QtNetwork.framework/QtNetwork /usr/local/Cellar/qt5/5.5.0/lib/QtWidgets.framework/QtWidgets /usr/local/Cellar/qt5/5.5.0/lib/QtGui.framework/QtGui /usr/local/Cellar/qt5/5.5.0/lib/QtCore.framework/QtCore  -framework Foundation -framework ApplicationServices -framework AppKit
QT_TEST_LIBS = /usr/local/Cellar/qt5/5.5.0/lib/QtTest.framework/QtTest /usr/local/Cellar/qt5/5.5.0/lib/QtCore.framework/QtCore

после внесения изменений

make clean
make

Работает отлично!

Запустить bitcoin-qt которая является GUI-версией ядра биткойнов из каталога src \ qt

Повеселись! Пожалуйста, помните, если вы бежите configure опять эти изменения будут перезаписаны.

1

Я передал эту ошибку, внеся изменения (нужно переделывать после каждого ./configure) в Makefile и src / Makefile

1: Снятие нескольких ‘-рамок Qtxxxx, поскольку они отчасти избыточны с’ -F path / to / qt / ‘в одной строке.

2. Замена остальных ‘-framework’ на некоторые базовые библиотеки Apple с помощью ‘-F /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk/System/Library/Frameworks’

Но, в конце концов, я все-таки отказался от qt gui, потому что затем столкнулся с проблемой, как показано в ссылке ниже, которая, кажется, qt5 из homebrew не для x64, и я слишком ленив, чтобы следить за хаком здесь

https://github.com/bitcoin/bitcoin/issues/5728

0

У меня была та же проблема, и я решил ее, переключившись обратно на qt4 и откомпилировав без GUI:

brew install autoconf automake berkeley-db4 libtool boost miniupnpc openssl pkg-config protobuf qt4

git clone https://github.com/bitcoin/bitcoin.git
cd bitcoin

./autogen.sh
./configure
make
0
По вопросам рекламы ammmcru@yandex.ru
Adblock
detector