У меня были проблемы с этой проблемой в течение почти двух дней, когда мой make вылетает вскоре после команды. Я следил за настройкой OSx из файла readme на github для биткойнов и выполнял ./autogen.sh и ./configure. Я пытался установить gcc, удалить и переустановить openssl и почти все, что мне приходило в голову. Обратите внимание, что команда make отлично работает в главной ветке, но не работает в последних ветках (в моем случае это версия 0.9.5). Это может быть или не быть простым решением, но я действительно в тупике на данный момент и ценю любую помощь. Вот ошибка, которую я получаю вскоре после выполнения команды make:
Making all in src
/Applications/Xcode.app/Contents/Developer/usr/bin/make all-recursive
Making all in .
CXX bitcoind.o
In file included from bitcoind.cpp:9:
In file included from ./main.h:13:
./bignum.h:56:24: error: base class has incomplete type
class CBigNum : public BIGNUM
~~~~~~~^~~~~~
/usr/local/Cellar/[email protected]/1.1.1d/include/openssl/ossl_typ.h:80:16: note: forward declaration of 'bignum_st'
typedef struct bignum_st BIGNUM;
^
In file included from bitcoind.cpp:9:
In file included from ./main.h:13:
./bignum.h:61:9: error: use of undeclared identifier 'BN_init'
BN_init(this);
^
./bignum.h:66:9: error: use of undeclared identifier 'BN_init'
BN_init(this);
^
./bignum.h:67:14: error: no matching function for call to 'BN_copy'
if (!BN_copy(this, &b))
^~~~~~~
/usr/local/Cellar/[email protected]/1.1.1d/include/openssl/bn.h:219:9: note: candidate function not viable: no known conversion
from 'CBigNum *' to 'BIGNUM *' (aka 'bignum_st *') for 1st argument
BIGNUM *BN_copy(BIGNUM *a, const BIGNUM *b);
^
In file included from bitcoind.cpp:9:
In file included from ./main.h:13:
./bignum.h:69:13: error: no matching function for call to 'BN_clear_free'
BN_clear_free(this);
^~~~~~~~~~~~~
/usr/local/Cellar/[email protected]/1.1.1d/include/openssl/bn.h:218:6: note: candidate function not viable: no known conversion
from 'CBigNum *' to 'BIGNUM *' (aka 'bignum_st *') for 1st argument
void BN_clear_free(BIGNUM *a);
^
In file included from bitcoind.cpp:9:
In file included from ./main.h:13:
./bignum.h:76:14: error: no matching function for call to 'BN_copy'
if (!BN_copy(this, &b))
^~~~~~~
/usr/local/Cellar/[email protected]/1.1.1d/include/openssl/bn.h:219:9: note: candidate function not viable: no known conversion
from 'CBigNum *' to 'BIGNUM *' (aka 'bignum_st *') for 1st argument
BIGNUM *BN_copy(BIGNUM *a, const BIGNUM *b);
^
In file included from bitcoind.cpp:9:
In file included from ./main.h:13:
./bignum.h:83:9: error: no matching function for call to 'BN_clear_free'
BN_clear_free(this);
^~~~~~~~~~~~~
/usr/local/Cellar/[email protected]/1.1.1d/include/openssl/bn.h:218:6: note: candidate function not viable: no known conversion
from 'CBigNum *' to 'BIGNUM *' (aka 'bignum_st *') for 1st argument
void BN_clear_free(BIGNUM *a);
^
In file included from bitcoind.cpp:9:
In file included from ./main.h:13:
./bignum.h:87:37: error: use of undeclared identifier 'BN_init'
CBigNum(signed char n) { BN_init(this); if (n >= 0) setulong(n); else setint64(n); }
^
./bignum.h:88:37: error: use of undeclared identifier 'BN_init'
CBigNum(short n) { BN_init(this); if (n >= 0) setulong(n); else setint64(n); }
^
./bignum.h:89:37: error: use of undeclared identifier 'BN_init'
CBigNum(int n) { BN_init(this); if (n >= 0) setulong(n); else setint64(n); }
^
./bignum.h:90:37: error: use of undeclared identifier 'BN_init'
CBigNum(long n) { BN_init(this); if (n >= 0) setulong(n); else setint64(n); }
^
./bignum.h:91:37: error: use of undeclared identifier 'BN_init'
CBigNum(long long n) { BN_init(this); setint64(n); }
^
./bignum.h:92:37: error: use of undeclared identifier 'BN_init'
CBigNum(unsigned char n) { BN_init(this); setulong(n); }
^
./bignum.h:93:37: error: use of undeclared identifier 'BN_init'
CBigNum(unsigned short n) { BN_init(this); setulong(n); }
^
./bignum.h:94:37: error: use of undeclared identifier 'BN_init'
CBigNum(unsigned int n) { BN_init(this); setulong(n); }
^
./bignum.h:95:37: error: use of undeclared identifier 'BN_init'
CBigNum(unsigned long n) { BN_init(this); setulong(n); }
^
./bignum.h:96:37: error: use of undeclared identifier 'BN_init'
CBigNum(unsigned long long n) { BN_init(this); setuint64(n); }
^
./bignum.h:97:37: error: use of undeclared identifier 'BN_init'
explicit CBigNum(uint256 n) { BN_init(this); setuint256(n); }
^
./bignum.h:101:9: error: use of undeclared identifier 'BN_init'
BN_init(this);
^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
make[3]: *** [bitcoind.o] Error 1
make[2]: *** [all-recursive] Error 1
make[1]: *** [all] Error 2
make: *** [all-recursive] Error 1