Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

makefile.unix:186: recipe for target 'obj/checkpoints.o' failed make: *** [obj/checkpoints.o] Error 1 #479

Closed
crawler080 opened this issue May 5, 2018 · 8 comments

Comments

@crawler080
Copy link

crawler080 commented May 5, 2018

I would appreciate any help I can get on this issue.

I've edited rcpcrawtransaction.cpp line 242 and removed "&" and "const" as shown in the tutorial. I then compiled the src folder "make -f makefile.unix" but I've been getting this error:

In file included from bignum.h:12:0,
from main.h:8,
from checkpoints.cpp:10:
util.h:245:22: warning: invalid suffix on literal; C++11 requires a space between literal and string macro [-Wliteral-suffix]
return strprintf("%"PRI64d, n);
^
In file included from main.h:10:0,
from checkpoints.cpp:10:
net.h:376:20: warning: invalid suffix on literal; C++11 requires a space between literal and string macro [-Wliteral-suffix]
printf("askfor %s %"PRI64d" (%s)\n", inv.ToString().c_str(), nRequestTime, DateTimeStrFormat("%H:%M:%S", nRequestTime/1000000).c_str());
^
In file included from checkpoints.cpp:10:0:
main.h:451:26: warning: invalid suffix on literal; C++11 requires a space between literal and string macro [-Wliteral-suffix]
return strprintf("CTxOut(nValue=%"PRI64d".%08"PRI64d", scriptPubKey=%s)", nValue / COIN, nValue % COIN, scriptPubKey.ToString().substr(0,30).c_str());
^
main.h:451:49: warning: invalid suffix on literal; C++11 requires a space between literal and string macro [-Wliteral-suffix]
return strprintf("CTxOut(nValue=%"PRI64d".%08"PRI64d", scriptPubKey=%s)", nValue / COIN, nValue % COIN, scriptPubKey.ToString().substr(0,30).c_str());
^
main.h:652:26: warning: invalid suffix on literal; C++11 requires a space between literal and string macro [-Wliteral-suffix]
str += strprintf("CTransaction(hash=%s, ver=%d, vin.size=%"PRIszu", vout.size=%"PRIszu", nLockTime=%u)\n",
^
main.h:652:74: warning: invalid suffix on literal; C++11 requires a space between literal and string macro [-Wliteral-suffix]
str += strprintf("CTransaction(hash=%s, ver=%d, vin.size=%"PRIszu", vout.size=%"PRIszu", nLockTime=%u)\n",
^
main.h:1503:16: warning: invalid suffix on literal; C++11 requires a space between literal and string macro [-Wliteral-suffix]
printf("CBlock(hash=%s, input=%s, PoW=%s, ver=%d, hashPrevBlock=%s, hashMerkleRoot=%s, nTime=%u, nBits=%08x, nNonce=%u, vtx=%"PRIszu")\n",
^
In file included from main.h:8:0,
from checkpoints.cpp:10:
bignum.h:51:24: error: invalid use of incomplete type ‘BIGNUM {aka struct bignum_st}’
class CBigNum : public BIGNUM
^~~~~~
In file included from /usr/include/openssl/bn.h:32:0,
from bignum.h:10,
from main.h:8,
from checkpoints.cpp:10:
/usr/include/openssl/ossl_typ.h:80:16: note: forward declaration of ‘BIGNUM {aka struct bignum_st}’
typedef struct bignum_st BIGNUM;
^~~~~~~~~
In file included from main.h:8:0,
from checkpoints.cpp:10:
bignum.h: In constructor ‘CBigNum::CBigNum()’:
bignum.h:56:9: error: ‘BN_init’ was not declared in this scope
BN_init(this);
^~~~~~~
bignum.h:56:9: note: suggested alternative: ‘BN_print’
BN_init(this);
^~~~~~~
BN_print
bignum.h: In copy constructor ‘CBigNum::CBigNum(const CBigNum&)’:
bignum.h:61:9: error: ‘BN_init’ was not declared in this scope
BN_init(this);
^~~~~~~
bignum.h:61:9: note: suggested alternative: ‘BN_print’
BN_init(this);
^~~~~~~
BN_print
bignum.h:62:30: error: cannot convert ‘CBigNum*’ to ‘BIGNUM* {aka bignum_st*}’ for argument ‘1’ to ‘BIGNUM* BN_copy(BIGNUM*, const BIGNUM*)’
if (!BN_copy(this, &b))
^
bignum.h:64:31: error: cannot convert ‘CBigNum*’ to ‘BIGNUM* {aka bignum_st*}’ for argument ‘1’ to ‘void BN_clear_free(BIGNUM*)’
BN_clear_free(this);
^
bignum.h: In member function ‘CBigNum& CBigNum::operator=(const CBigNum&)’:
bignum.h:71:30: error: cannot convert ‘CBigNum*’ to ‘BIGNUM* {aka bignum_st*}’ for argument ‘1’ to ‘BIGNUM* BN_copy(BIGNUM*, const BIGNUM*)’
if (!BN_copy(this, &b))
^
bignum.h: In destructor ‘CBigNum::~CBigNum()’:
bignum.h:78:27: error: cannot convert ‘CBigNum*’ to ‘BIGNUM* {aka bignum_st*}’ for argument ‘1’ to ‘void BN_clear_free(BIGNUM*)’
BN_clear_free(this);
^
bignum.h: In constructor ‘CBigNum::CBigNum(signed char)’:
bignum.h:82:35: error: ‘BN_init’ was not declared in this scope
CBigNum(signed char n) { BN_init(this); if (n >= 0) setulong(n); else setint64(n); }
^~~~~~~
bignum.h:82:35: note: suggested alternative: ‘BN_print’
CBigNum(signed char n) { BN_init(this); if (n >= 0) setulong(n); else setint64(n); }
^~~~~~~
BN_print
bignum.h: In constructor ‘CBigNum::CBigNum(short int)’:
bignum.h:83:35: error: ‘BN_init’ was not declared in this scope
CBigNum(short n) { BN_init(this); if (n >= 0) setulong(n); else setint64(n); }
^~~~~~~
bignum.h:83:35: note: suggested alternative: ‘BN_print’
CBigNum(short n) { BN_init(this); if (n >= 0) setulong(n); else setint64(n); }
^~~~~~~
BN_print
bignum.h: In constructor ‘CBigNum::CBigNum(int)’:
bignum.h:84:35: error: ‘BN_init’ was not declared in this scope
CBigNum(int n) { BN_init(this); if (n >= 0) setulong(n); else setint64(n); }
^~~~~~~
bignum.h:84:35: note: suggested alternative: ‘BN_print’
CBigNum(int n) { BN_init(this); if (n >= 0) setulong(n); else setint64(n); }
^~~~~~~
BN_print
bignum.h: In constructor ‘CBigNum::CBigNum(long int)’:
bignum.h:85:35: error: ‘BN_init’ was not declared in this scope
CBigNum(long n) { BN_init(this); if (n >= 0) setulong(n); else setint64(n); }
^~~~~~~
bignum.h:85:35: note: suggested alternative: ‘BN_print’
CBigNum(long n) { BN_init(this); if (n >= 0) setulong(n); else setint64(n); }
^~~~~~~
BN_print
bignum.h: In constructor ‘CBigNum::CBigNum(int64)’:
bignum.h:86:35: error: ‘BN_init’ was not declared in this scope
CBigNum(int64 n) { BN_init(this); setint64(n); }
^~~~~~~
bignum.h:86:35: note: suggested alternative: ‘BN_print’
CBigNum(int64 n) { BN_init(this); setint64(n); }
^~~~~~~
BN_print
bignum.h: In constructor ‘CBigNum::CBigNum(unsigned char)’:
bignum.h:87:35: error: ‘BN_init’ was not declared in this scope
CBigNum(unsigned char n) { BN_init(this); setulong(n); }
^~~~~~~
bignum.h:87:35: note: suggested alternative: ‘BN_print’
CBigNum(unsigned char n) { BN_init(this); setulong(n); }
^~~~~~~
BN_print
bignum.h: In constructor ‘CBigNum::CBigNum(short unsigned int)’:
bignum.h:88:35: error: ‘BN_init’ was not declared in this scope
CBigNum(unsigned short n) { BN_init(this); setulong(n); }
^~~~~~~
bignum.h:88:35: note: suggested alternative: ‘BN_print’
CBigNum(unsigned short n) { BN_init(this); setulong(n); }
^~~~~~~
BN_print
bignum.h: In constructor ‘CBigNum::CBigNum(unsigned int)’:
bignum.h:89:35: error: ‘BN_init’ was not declared in this scope
CBigNum(unsigned int n) { BN_init(this); setulong(n); }
^~~~~~~
bignum.h:89:35: note: suggested alternative: ‘BN_print’
CBigNum(unsigned int n) { BN_init(this); setulong(n); }
^~~~~~~
BN_print
bignum.h: In constructor ‘CBigNum::CBigNum(long unsigned int)’:
bignum.h:90:35: error: ‘BN_init’ was not declared in this scope
CBigNum(unsigned long n) { BN_init(this); setulong(n); }
^~~~~~~
bignum.h:90:35: note: suggested alternative: ‘BN_print’
CBigNum(unsigned long n) { BN_init(this); setulong(n); }
^~~~~~~
BN_print
bignum.h: In constructor ‘CBigNum::CBigNum(uint64)’:
bignum.h:91:35: error: ‘BN_init’ was not declared in this scope
CBigNum(uint64 n) { BN_init(this); setuint64(n); }
^~~~~~~
bignum.h:91:35: note: suggested alternative: ‘BN_print’
CBigNum(uint64 n) { BN_init(this); setuint64(n); }
^~~~~~~
BN_print
bignum.h: In constructor ‘CBigNum::CBigNum(uint256)’:
bignum.h:92:35: error: ‘BN_init’ was not declared in this scope
explicit CBigNum(uint256 n) { BN_init(this); setuint256(n); }
^~~~~~~
bignum.h:92:35: note: suggested alternative: ‘BN_print’
explicit CBigNum(uint256 n) { BN_init(this); setuint256(n); }
^~~~~~~
BN_print
bignum.h: In constructor ‘CBigNum::CBigNum(const std::vector&)’:
bignum.h:96:9: error: ‘BN_init’ was not declared in this scope
BN_init(this);
^~~~~~~
bignum.h:96:9: note: suggested alternative: ‘BN_print’
BN_init(this);
^~~~~~~
BN_print
bignum.h: In member function ‘void CBigNum::setulong(long unsigned int)’:
bignum.h:102:33: error: cannot convert ‘CBigNum*’ to ‘BIGNUM* {aka bignum_st*}’ for argument ‘1’ to ‘int BN_set_word(BIGNUM*, long unsigned int)’
if (!BN_set_word(this, n))
^
bignum.h: In member function ‘long unsigned int CBigNum::getulong() const’:
bignum.h:108:32: error: cannot convert ‘const CBigNum*’ to ‘const BIGNUM* {aka const bignum_st*}’ for argument ‘1’ to ‘long unsigned int BN_get_word(const BIGNUM*)’
return BN_get_word(this);
^
bignum.h: In member function ‘unsigned int CBigNum::getuint() const’:
bignum.h:113:32: error: cannot convert ‘const CBigNum*’ to ‘const BIGNUM* {aka const bignum_st*}’ for argument ‘1’ to ‘long unsigned int BN_get_word(const BIGNUM*)’
return BN_get_word(this);
^
bignum.h: In member function ‘int CBigNum::getint() const’:
bignum.h:118:43: error: cannot convert ‘const CBigNum*’ to ‘const BIGNUM* {aka const bignum_st*}’ for argument ‘1’ to ‘long unsigned int BN_get_word(const BIGNUM*)’
unsigned long n = BN_get_word(this);
^
bignum.h:119:33: error: cannot convert ‘const CBigNum*’ to ‘const BIGNUM* {aka const bignum_st*}’ for argument ‘1’ to ‘int BN_is_negative(const BIGNUM*)’
if (!BN_is_negative(this))
^
In file included from main.h:8:0,
from checkpoints.cpp:10:
bignum.h: In member function ‘void CBigNum::setint64(int64)’:
bignum.h:167:37: error: cannot convert ‘CBigNum*’ to ‘BIGNUM* {aka bignum_st*}’ for argument ‘3’ to ‘BIGNUM* BN_mpi2bn(const unsigned char*, int, BIGNUM*)’
BN_mpi2bn(pch, p - pch, this);
^
bignum.h: In member function ‘void CBigNum::setuint64(uint64)’:
bignum.h:194:37: error: cannot convert ‘CBigNum*’ to ‘BIGNUM* {aka bignum_st*}’ for argument ‘3’ to ‘BIGNUM* BN_mpi2bn(const unsigned char*, int, BIGNUM*)’
BN_mpi2bn(pch, p - pch, this);
^
bignum.h: In member function ‘void CBigNum::setuint256(uint256)’:
bignum.h:222:37: error: cannot convert ‘CBigNum*’ to ‘BIGNUM* {aka bignum_st*}’ for argument ‘3’ to ‘BIGNUM* BN_mpi2bn(const unsigned char*, int, BIGNUM*)’
BN_mpi2bn(pch, p - pch, this);
^
bignum.h: In member function ‘uint256 CBigNum::getuint256() const’:
bignum.h:227:50: error: cannot convert ‘const CBigNum*’ to ‘const BIGNUM* {aka const bignum_st*}’ for argument ‘1’ to ‘int BN_bn2mpi(const BIGNUM*, unsigned char*)’
unsigned int nSize = BN_bn2mpi(this, NULL);
^
bignum.h:231:32: error: cannot convert ‘const CBigNum*’ to ‘const BIGNUM* {aka const bignum_st*}’ for argument ‘1’ to ‘int BN_bn2mpi(const BIGNUM*, unsigned char*)’
BN_bn2mpi(this, &vch[0]);
^
bignum.h: In member function ‘void CBigNum::setvch(const std::vector&)’:
bignum.h:252:46: error: cannot convert ‘CBigNum*’ to ‘BIGNUM* {aka bignum_st*}’ for argument ‘3’ to ‘BIGNUM* BN_mpi2bn(const unsigned char*, int, BIGNUM*)’
BN_mpi2bn(&vch2[0], vch2.size(), this);
^
bignum.h: In member function ‘std::vector CBigNum::getvch() const’:
bignum.h:257:50: error: cannot convert ‘const CBigNum*’ to ‘const BIGNUM* {aka const bignum_st*}’ for argument ‘1’ to ‘int BN_bn2mpi(const BIGNUM*, unsigned char*)’
unsigned int nSize = BN_bn2mpi(this, NULL);
^
bignum.h:261:32: error: cannot convert ‘const CBigNum*’ to ‘const BIGNUM* {aka const bignum_st*}’ for argument ‘1’ to ‘int BN_bn2mpi(const BIGNUM*, unsigned char*)’
BN_bn2mpi(this, &vch[0]);
^
bignum.h: In member function ‘CBigNum& CBigNum::SetCompact(unsigned int)’:
bignum.h:297:36: error: cannot convert ‘CBigNum*’ to ‘BIGNUM* {aka bignum_st*}’ for argument ‘1’ to ‘int BN_set_word(BIGNUM*, long unsigned int)’
BN_set_word(this, nWord);
^
bignum.h:301:36: error: cannot convert ‘CBigNum*’ to ‘BIGNUM* {aka bignum_st*}’ for argument ‘1’ to ‘int BN_set_word(BIGNUM*, long unsigned int)’
BN_set_word(this, nWord);
^
bignum.h:302:46: error: cannot convert ‘CBigNum*’ to ‘BIGNUM* {aka bignum_st*}’ for argument ‘1’ to ‘int BN_lshift(BIGNUM*, const BIGNUM*, int)’
BN_lshift(this, this, 8*(nSize-3));
^
bignum.h:304:40: error: cannot convert ‘CBigNum*’ to ‘BIGNUM* {aka bignum_st*}’ for argument ‘1’ to ‘void BN_set_negative(BIGNUM*, int)’
BN_set_negative(this, fNegative);
^
In file included from bignum.h:10:0,
from main.h:8,
from checkpoints.cpp:10:
bignum.h: In member function ‘unsigned int CBigNum::GetCompact() const’:
bignum.h:310:30: error: cannot convert ‘const CBigNum*’ to ‘const BIGNUM* {aka const bignum_st*}’ for argument ‘1’ to ‘int BN_num_bits(const BIGNUM*)’
unsigned int nSize = BN_num_bytes(this);
^
In file included from main.h:8:0,
from checkpoints.cpp:10:
bignum.h:313:40: error: cannot convert ‘const CBigNum*’ to ‘const BIGNUM* {aka const bignum_st*}’ for argument ‘1’ to ‘long unsigned int BN_get_word(const BIGNUM*)’
nCompact = BN_get_word(this) << 8*(3-nSize);
^
bignum.h:317:45: error: cannot convert ‘CBigNum*’ to ‘BIGNUM* {aka bignum_st*}’ for argument ‘1’ to ‘int BN_rshift(BIGNUM*, const BIGNUM*, int)’
BN_rshift(&bn, this, 8*(nSize-3));
^
bignum.h:318:39: error: cannot convert ‘CBigNum*’ to ‘const BIGNUM* {aka const bignum_st*}’ for argument ‘1’ to ‘long unsigned int BN_get_word(const BIGNUM*)’
nCompact = BN_get_word(&bn);
^
bignum.h:328:41: error: cannot convert ‘const CBigNum*’ to ‘const BIGNUM* {aka const bignum_st*}’ for argument ‘1’ to ‘int BN_is_negative(const BIGNUM*)’
nCompact |= (BN_is_negative(this) ? 0x00800000 : 0);
^
In file included from main.h:8:0,
from checkpoints.cpp:10:
bignum.h: In member function ‘std::__cxx11::string CBigNum::ToString(int) const’:
bignum.h:369:35: error: cannot convert ‘CBigNum*’ to ‘BIGNUM* {aka bignum_st*}’ for argument ‘1’ to ‘void BN_set_negative(BIGNUM*, int)’
BN_set_negative(&bn, false);
^
bignum.h:372:29: error: cannot convert ‘CBigNum*’ to ‘const BIGNUM* {aka const bignum_st*}’ for argument ‘1’ to ‘int BN_cmp(const BIGNUM*, const BIGNUM*)’
if (BN_cmp(&bn, &bn0) == 0)
^
bignum.h:374:32: error: cannot convert ‘CBigNum*’ to ‘const BIGNUM* {aka const bignum_st*}’ for argument ‘1’ to ‘int BN_cmp(const BIGNUM*, const BIGNUM*)’
while (BN_cmp(&bn, &bn0) > 0)
^
bignum.h:376:54: error: cannot convert ‘CBigNum*’ to ‘BIGNUM* {aka bignum_st*}’ for argument ‘1’ to ‘int BN_div(BIGNUM*, BIGNUM*, const BIGNUM*, const BIGNUM*, BN_CTX*)’
if (!BN_div(&dv, &rem, &bn, &bnBase, pctx))
^
bignum.h:382:32: error: cannot convert ‘const CBigNum*’ to ‘const BIGNUM* {aka const bignum_st*}’ for argument ‘1’ to ‘int BN_is_negative(const BIGNUM*)’
if (BN_is_negative(this))
^
bignum.h: In member function ‘bool CBigNum::operator!() const’:
bignum.h:415:31: error: cannot convert ‘const CBigNum*’ to ‘const BIGNUM* {aka const bignum_st*}’ for argument ‘1’ to ‘int BN_is_zero(const BIGNUM*)’
return BN_is_zero(this);
^
bignum.h: In member function ‘CBigNum& CBigNum::operator+=(const CBigNum&)’:
bignum.h:420:35: error: cannot convert ‘CBigNum*’ to ‘BIGNUM* {aka bignum_st*}’ for argument ‘1’ to ‘int BN_add(BIGNUM*, const BIGNUM*, const BIGNUM*)’
if (!BN_add(this, this, &b))
^
bignum.h: In member function ‘CBigNum& CBigNum::operator*=(const CBigNum&)’:
bignum.h:434:41: error: cannot convert ‘CBigNum*’ to ‘BIGNUM* {aka bignum_st*}’ for argument ‘1’ to ‘int BN_mul(BIGNUM*, const BIGNUM*, const BIGNUM*, BN_CTX*)’
if (!BN_mul(this, this, &b, pctx))
^
bignum.h: In member function ‘CBigNum& CBigNum::operator<<=(unsigned int)’:
bignum.h:453:41: error: cannot convert ‘CBigNum*’ to ‘BIGNUM* {aka bignum_st*}’ for argument ‘1’ to ‘int BN_lshift(BIGNUM*, const BIGNUM*, int)’
if (!BN_lshift(this, this, shift))
^
bignum.h: In member function ‘CBigNum& CBigNum::operator>>=(unsigned int)’:
bignum.h:464:28: error: cannot convert ‘CBigNum*’ to ‘const BIGNUM* {aka const bignum_st*}’ for argument ‘1’ to ‘int BN_cmp(const BIGNUM*, const BIGNUM*)’
if (BN_cmp(&a, this) > 0)
^
bignum.h:470:41: error: cannot convert ‘CBigNum*’ to ‘BIGNUM* {aka bignum_st*}’ for argument ‘1’ to ‘int BN_rshift(BIGNUM*, const BIGNUM*, int)’
if (!BN_rshift(this, this, shift))
^
bignum.h: In member function ‘CBigNum& CBigNum::operator++()’:
bignum.h:479:47: error: cannot convert ‘CBigNum*’ to ‘BIGNUM* {aka bignum_st*}’ for argument ‘1’ to ‘int BN_add(BIGNUM*, const BIGNUM*, const BIGNUM*)’
if (!BN_add(this, this, BN_value_one()))
^
bignum.h: In member function ‘CBigNum& CBigNum::operator--()’:
bignum.h:496:45: error: cannot convert ‘CBigNum*’ to ‘BIGNUM* {aka bignum_st*}’ for argument ‘1’ to ‘int BN_sub(BIGNUM*, const BIGNUM*, const BIGNUM*)’
if (!BN_sub(&r, this, BN_value_one()))
^
bignum.h: In function ‘const CBigNum operator+(const CBigNum&, const CBigNum&)’:
bignum.h:521:27: error: cannot convert ‘CBigNum*’ to ‘BIGNUM* {aka bignum_st*}’ for argument ‘1’ to ‘int BN_add(BIGNUM*, const BIGNUM*, const BIGNUM*)’
if (!BN_add(&r, &a, &b))
^
bignum.h: In function ‘const CBigNum operator-(const CBigNum&, const CBigNum&)’:
bignum.h:529:27: error: cannot convert ‘CBigNum*’ to ‘BIGNUM* {aka bignum_st*}’ for argument ‘1’ to ‘int BN_sub(BIGNUM*, const BIGNUM*, const BIGNUM*)’
if (!BN_sub(&r, &a, &b))
^
bignum.h: In function ‘const CBigNum operator-(const CBigNum&)’:
bignum.h:537:43: error: cannot convert ‘CBigNum*’ to ‘const BIGNUM* {aka const bignum_st*}’ for argument ‘1’ to ‘int BN_is_negative(const BIGNUM*)’
BN_set_negative(&r, !BN_is_negative(&r));
^
bignum.h: In function ‘const CBigNum operator*(const CBigNum&, const CBigNum&)’:
bignum.h:545:33: error: cannot convert ‘CBigNum*’ to ‘BIGNUM* {aka bignum_st*}’ for argument ‘1’ to ‘int BN_mul(BIGNUM*, const BIGNUM*, const BIGNUM*, BN_CTX*)’
if (!BN_mul(&r, &a, &b, pctx))
^
bignum.h: In function ‘const CBigNum operator/(const CBigNum&, const CBigNum&)’:
bignum.h:554:39: error: cannot convert ‘CBigNum*’ to ‘BIGNUM* {aka bignum_st*}’ for argument ‘1’ to ‘int BN_div(BIGNUM*, BIGNUM*, const BIGNUM*, const BIGNUM*, BN_CTX*)’
if (!BN_div(&r, NULL, &a, &b, pctx))
^
In file included from bignum.h:10:0,
from main.h:8,
from checkpoints.cpp:10:
bignum.h: In function ‘const CBigNum operator%(const CBigNum&, const CBigNum&)’:
bignum.h:563:10: error: cannot convert ‘CBigNum*’ to ‘BIGNUM* {aka bignum_st*}’ for argument ‘2’ to ‘int BN_div(BIGNUM*, BIGNUM*, const BIGNUM*, const BIGNUM*, BN_CTX*)’
if (!BN_mod(&r, &a, &b, pctx))
^
In file included from main.h:8:0,
from checkpoints.cpp:10:
bignum.h: In function ‘const CBigNum operator<<(const CBigNum&, unsigned int)’:
bignum.h:571:33: error: cannot convert ‘CBigNum*’ to ‘BIGNUM* {aka bignum_st*}’ for argument ‘1’ to ‘int BN_lshift(BIGNUM*, const BIGNUM*, int)’
if (!BN_lshift(&r, &a, shift))
^
bignum.h: In function ‘bool operator==(const CBigNum&, const CBigNum&)’:
bignum.h:583:83: error: cannot convert ‘const CBigNum*’ to ‘const BIGNUM* {aka const bignum_st*}’ for argument ‘1’ to ‘int BN_cmp(const BIGNUM*, const BIGNUM*)’
perator==(const CBigNum& a, const CBigNum& b) { return (BN_cmp(&a, &b) == 0); }
^
bignum.h: In function ‘bool operator!=(const CBigNum&, const CBigNum&)’:
bignum.h:584:83: error: cannot convert ‘const CBigNum*’ to ‘const BIGNUM* {aka const bignum_st*}’ for argument ‘1’ to ‘int BN_cmp(const BIGNUM*, const BIGNUM*)’
perator!=(const CBigNum& a, const CBigNum& b) { return (BN_cmp(&a, &b) != 0); }
^
bignum.h: In function ‘bool operator<=(const CBigNum&, const CBigNum&)’:
bignum.h:585:83: error: cannot convert ‘const CBigNum*’ to ‘const BIGNUM* {aka const bignum_st*}’ for argument ‘1’ to ‘int BN_cmp(const BIGNUM*, const BIGNUM*)’
perator<=(const CBigNum& a, const CBigNum& b) { return (BN_cmp(&a, &b) <= 0); }
^
bignum.h: In function ‘bool operator>=(const CBigNum&, const CBigNum&)’:
bignum.h:586:83: error: cannot convert ‘const CBigNum*’ to ‘const BIGNUM* {aka const bignum_st*}’ for argument ‘1’ to ‘int BN_cmp(const BIGNUM*, const BIGNUM*)’
perator>=(const CBigNum& a, const CBigNum& b) { return (BN_cmp(&a, &b) >= 0); }
^
bignum.h: In function ‘bool operator<(const CBigNum&, const CBigNum&)’:
bignum.h:587:83: error: cannot convert ‘const CBigNum*’ to ‘const BIGNUM* {aka const bignum_st*}’ for argument ‘1’ to ‘int BN_cmp(const BIGNUM*, const BIGNUM*)’
operator<(const CBigNum& a, const CBigNum& b) { return (BN_cmp(&a, &b) < 0); }
^
bignum.h: In function ‘bool operator>(const CBigNum&, const CBigNum&)’:
bignum.h:588:83: error: cannot convert ‘const CBigNum*’ to ‘const BIGNUM* {aka const bignum_st*}’ for argument ‘1’ to ‘int BN_cmp(const BIGNUM*, const BIGNUM*)’
operator>(const CBigNum& a, const CBigNum& b) { return (BN_cmp(&a, &b) > 0); }
^
makefile.unix:186: recipe for target 'obj/checkpoints.o' failed
make: *** [obj/checkpoints.o] Error 1

Thank you in advance!

@thrasher-
Copy link
Member

Hey there,

Litecoin no longer uses the makefile.unix file, that was for versions 0.8.x or before. Please use the latest master or 0.16 branches. Build instructions can be found here: https://github.com/litecoin-project/litecoin/blob/master/doc/build-unix.md

@Brewin95
Copy link

^^ Doesn't Answer His Question.

thrasher- pushed a commit to thrasher-/litecoin that referenced this issue Dec 6, 2019
b19c000 Merge litecoin-project#607: Use size_t shifts when computing a size_t
4d01bc2 Merge litecoin-project#606: travis: Remove unused sudo:false
e6d01e9 Use size_t shifts when computing a size_t
7667532 travis: Remove unused sudo:false
ee99f12 Merge litecoin-project#599: Switch x86_64 asm to use "i" instead of "n" for immediate values.
d58bc93 Switch x86_64 asm to use "i" instead of "n" for immediate values.
05362ee Merge litecoin-project#597: Add $(COMMON_LIB) to exhaustive tests to fix ARM asm build
8348386 Add $(COMMON_LIB) to exhaustive tests to fix ARM asm build
aa15154 Merge litecoin-project#568: Fix integer overflow in ecmult_multi_var when n is large
2277af5 Fix integer overflow in ecmult_multi_var when n is large
85d0e1b Merge litecoin-project#591: Make bench_internal obey secp256k1_fe_sqrt's contract wrt aliasing.
1419637 Merge litecoin-project#580: Add trivial ecmult_multi algorithm which does not require a scratch space
a697d82 Add trivial ecmult_multi to the benchmark tool
bade617 Add trivial ecmult_multi algorithm. It is selected when no scratch space is given and just multiplies and adds the points.
5545e13 Merge litecoin-project#584: configure: Use CFLAGS_FOR_BUILD when checking native compiler
20c5869 Merge litecoin-project#516: improvements to random seed in src/tests.c
b76e45d Make bench_internal obey secp256k1_fe_sqrt's contract wrt aliasing.
870a977 Merge litecoin-project#562: Make use of TAG_PUBKEY constants in secp256k1_eckey_pubkey_parse
be40c4d Fixup for C90 mixed declarations.
c71dd2c Merge litecoin-project#509: Fix algorithm selection in bench_ecmult
6492bf8 Merge litecoin-project#518: Summarize build options after running configure
0e9ada1 Merge litecoin-project#567: Correct order of libs returned on pkg-config --libs --static libsecp2…
e96901a Merge litecoin-project#587: Make randomization of a non-signing context a noop
58df8d0 Merge litecoin-project#511: Portability fix for the configure scripts generated
2ebdad7 Merge litecoin-project#552: Make constants static:
1c131af Merge litecoin-project#551: secp256k1_fe_sqrt: Verify that the arguments don't alias.
ba698f8 Merge litecoin-project#539: Assorted minor corrections
949e85b Merge litecoin-project#550: Optimize secp256k1_fe_normalize_weak calls.
a34bcaa Actually pass CFLAGS_FOR_BUILD and LDFLAGS_FOR_BUILD to linker
2d5f4ce configure: Use CFLAGS_FOR_BUILD when checking native compiler
b408c6a Merge litecoin-project#579: Use __GNUC_PREREQ for detecting __builtin_expect
6198375 Make randomization of a non-signing context a noop
c663397 Use __GNUC_PREREQ for detecting __builtin_expect
e34ceb3 Merge litecoin-project#557: Eliminate scratch memory used when generating contexts
b3bf5f9 ecmult_impl: expand comment to explain how effective affine interacts with everything
efa783f Store z-ratios in the 'x' coord they'll recover
ffd3b34 add `secp256k1_ge_set_all_gej_var` test which deals with many infinite points
84740ac ecmult_impl: save one fe_inv_var
4704527 ecmult_impl: eliminate scratch memory used when generating context
7f7a2ed ecmult_gen_impl: eliminate scratch memory used when generating context
314a61d Merge litecoin-project#553: add static context object which has no capabilities
89a20a8 Correct order of libs returned on pkg-config --libs --static libsecp256k1 call.
1086fda Merge litecoin-project#354: [ECDH API change] Support custom hash function
d3cb1f9 Make use of TAG_PUBKEY constants in secp256k1_eckey_pubkey_parse
40fde61 prevent attempts to modify `secp256k1_context_no_precomp`
ed7c084 add static context object which has no capabilities
496c5b4 Make constants static: static const secp256k1_ge secp256k1_ge_const_g; static const int CURVE_B;
bf8b86c secp256k1_fe_sqrt: Verify that the arguments don't alias.
9bd89c8 Optimize secp256k1_fe_normalize_weak calls. Move secp256k1_fe_normalize_weak calls out of ECMULT_TABLE_GET_GE and ECMULT_TABLE_GET_GE_STORAGE and into secp256k1_ge_globalz_set_table_gej instead.
52ab96f clean dependendies in field_*_impl.h
deff5ed Correct math typos in field_*.h
4efb3f8 Add check that restrict pointers don't alias with all parameters.
1e6f1f5 Merge litecoin-project#529: fix tests.c in the count == 0 case
c8fbc3c [ECDH API change] Allow pass arbitrary data to hash function
b00be65 [ECDH API change] Support custom hash function
95e99f1 fix tests.c in the count == 0 case
452d8e4 Merge litecoin-project#523: scratch: add stack frame support
6fe5043 scratch: add stack frame support
9bc2e26 Merge litecoin-project#522: parameterize ecmult_const over input size
7c1b91b parameterize ecmult_const over input size
dbc3ddd Merge litecoin-project#513: Increase sparsity of pippenger fixed window naf representation
3965027 Summarize build options in configure script
0f05173 Fix algorithm selection in bench_ecmult
fb9271d Merge litecoin-project#510: add a couple missing `const`s to ecmult_pippenger_wnaf
cd5f602 Merge litecoin-project#515: Fix typo
09146ae Merge litecoin-project#512: secp256k1_ec_privkey_negate - fix documentation
ec0a7b3 Don't touch leading zeros in wnaf_fixed.
9e36d1b Fix bug in wnaf_fixed where the wnaf array is not completely zeroed when given a 0 scalar.
96f68a0 Don't invert scalar in wnaf_fixed when it is even because a caller might intentionally give a scalar with many leading zeros.
8b3841c fix bug in fread() failure check
cddef0c tests: add warning message when /dev/urandom fails
9b7c47a Fix typo
6dbb007 Increase sparsity of pippenger fixed window naf representation
1646ace secp256k1_ec_privkey_negate - fix documentation
270f6c8 Portability fix for the configure scripts generated
9b3ff03 add a couple missing `const`s to ecmult_pippenger_wnaf
cd329db Merge litecoin-project#460: [build] Update ax_jni_include_dir.m4 macro
7f9c1a1 Merge litecoin-project#498: tests: Avoid calling fclose(...) with an invalid argument
f99aa8d Merge litecoin-project#499: tests: Make sure we get the requested number of bytes from /dev/urandom
b549d3d Merge litecoin-project#472: [build] Set --enable-jni to no by default instead of auto.
d333521 Merge litecoin-project#494: Support OpenSSL versions >= 1.1 for ENABLE_OPENSSL_TESTS
2ef8ea5 Merge litecoin-project#495: Add bench_ecmult to .gitignore
82a96e4 tests: Make sure we get the requested number of bytes from /dev/urandom
5aae5b5 Avoid calling fclose(...) with an invalid argument
cb32940 Add bench_ecmult to .gitignore
31abd3a Support OpenSSL versions >= 1.1 for ENABLE_OPENSSL_TESTS
c95f6f1 Merge litecoin-project#487: fix tests typo, s/changed/unchanged
fb46c83 Merge litecoin-project#463: Reduce usage of hardcoded size constants
02f5001 Merge litecoin-project#490: Disambiguate bench functions and types
1f46d60 Disambiguate bench functions and types
f54c6c5 Merge litecoin-project#480: Enable benchmark building by default
c77fc08 Merge litecoin-project#486: Add pippenger_wnaf for multi-multiplication
d2f9c6b Use more precise pippenger bucket windows
4c950bb Save some additions per window in _pippenger_wnaf
a58f543 Add flags for choosing algorithm in ecmult_multi benchmark
36b22c9 Use scratch space dependent batching in ecmult_multi
355a38f Add pippenger_wnaf ecmult_multi
bc65aa7 Add bench_ecmult
dba5471 Add ecmult_multi tests
8c1c831 Generalize Strauss to support multiple points
548de42 add resizeable scratch space API
0e96cdc fix typo, s/changed/unchanged
c7680e5 Reduce usage of hardcoded size constants
6ad5cdb Merge litecoin-project#479: Get rid of reserved _t in type names
7a78f60 Print whether we're building benchmarks
4afec9f Build benchmarks by default
d1dc9df Get rid of reserved _t in type names
57752d2 [build] Set --enable-jni to no by default instead of auto.
e7daa9b [build] Tweak JNI macro to warn instead of error for JNI not found.
5b22977 [build] Update ax_jni_include_dir.m4 macro to deal with recent versions of macOS

git-subtree-dir: src/secp256k1
git-subtree-split: b19c000
@CCD05
Copy link

CCD05 commented Jan 15, 2021

Hey !

sudo apt-get remove libssl-dev
sudo apt install libssl1.0-dev

For me works in Ubuntu 18.4.

Enjoy

@jdavid18
Copy link

jdavid18 commented Feb 4, 2021

CCDO5.. I did the same thing as you but I am getting fatal error: openssl/bn.h: No such file or directory. Any tips? Were you able to create your own crypto? Im doing it on Ubuntu 20.04.1

@EsmailELBoBDev2
Copy link

EsmailELBoBDev2 commented Feb 22, 2021

jdavid18, so let's make it clear the apps did not get updated from years. i used most recent ubuntu with fosel name (if i remember) and most of apps are for older ubuntu versions so i kept getting errors so my recommendation is try to download bionic version :D

@BrockMckjs
Copy link

BrockMckjs commented May 19, 2021

CCDO5.. I did the same thing as you but I am getting fatal error: openssl/bn.h: No such file or directory. Any tips? Were you able to create your own crypto? Im doing it on Ubuntu 20.04.1

Sorry, kind of late. I couldn't get it to work very well in ubuntu 20.x.x and found that using 18.4 worked the best to install old openSSL. I don't know if you are still interested in this or not, but you can get ubuntu 18.4 from the Microsoft store and use WSL to make this and build it correctly.

@EsmailELBoBDev2
Copy link

but you can get ubuntu 18.4 from the Microsoft store and use WSL to make this and build it correctly.

ew no, use VirtualBox

@BrockMckjs
Copy link

but you can get ubuntu 18.4 from the Microsoft store and use WSL to make this and build it correctly.

ew no, use VirtualBox

Only if you plan to use the GUI version (I did) but if you are just using litecoind then you are fine with just using wsl. I will admit that file management on wsl is pretty bad though.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

7 participants