Closed allesklaar closed 6 years ago
Just a note on research so far. This (BIGNUM) issue seems related to compatibility with SLL and the move to 0.13 in other (coin) cases. https://github.com/bitcoin/bitcoin/issues/7086
Seems weird to appear on 0.9.6.1 (at this stage) - ToDo : Is there a problem with the ssl on Arch?
Looks like we need to remove this (particular) test for openssl (as it is unnecessary, openssl not used in this code any more).
https://github.com/laanwj/bitcoin/commit/4ec3561eb3473638230ef780b41343bc6284b460
ToDo
The error @allesklaar has posted it doesn't mention the tests.
I think It's building this file: https://github.com/FeatherCoin/Feathercoin/blob/0.9.6.1/src/bignum.h
in Bitcoin version 0.10 they removed the need for bignum.h
That change involved 753 changed files with 92,498 additions and 145,765 deletions. https://github.com/bitcoin/bitcoin/compare/0.9...0.10
I believe this might only be fixed when we move to 0.11+ @wellenreiter01 or @cqtenq might be able to confirm.
Issue exists for all 0.9.x versions. OS known with problems:
Any chances this will ever be fixed? For months now it's been impossible to build FeatherCoin, be it 0.9.6.1, 0.9.6.2 or 0.11.2 on Arch.
Try this? - Create file build.sh with:
export PKG_CONFIG_PATH="/usr/lib/openssl-1.0/pkgconfig" //CHANGE TO OWN OPENSSL PATH export CXXFLAGS+=" -I/usr/include/openssl-1.0" //CHANGE TO OWN OPENSSL PATH export LDFLAGS+=" -L/usr/lib/openssl-1.0 -lssl" //CHANGE TO OWN OPENSSL PATH
./autogen.sh ./configure make -j4
and run: ./build.sh
I managed to get past the errors by adapting changes from other projects:
bignum.h, two commits: https://github.com/zcoinofficial/zcoin/pull/111
Note that the content of the block starting with "//CBigNum(char n) is not portable" differs, so change only existing instances of BN_init(this) to init().
Also ignore other blocks that do no exist in Feathercoin's version.
crypter.cpp and key.cpp (ecwrapper.cpp): https://github.com/thegreatoldone/skidoo/pull/7
I found the skidoo pull request after I had already modified my bignum.h according to the zcoin changes and don't have any idea, if the bignum.h version of the skidoo PR would be more appropriate.
I hope an actual dev can review these and integrate.
I got another error in qt/paymentrequestplus.cpp and got past it by imitating the change in crypter.cpp, changing the EVP_MD_CTX block like so:
EVP_MD_CTX *ctx = EVP_MD_CTX_new();
EVP_PKEY *pubkey = X509_get_pubkey(signing_cert);
EVP_MD_CTX_init(ctx);
if (!EVP_VerifyInit_ex(ctx, digestAlgorithm, NULL) ||
!EVP_VerifyUpdate(ctx, data_to_verify.data(), data_to_verify.size()) ||
!EVP_VerifyFinal(ctx, (const unsigned char*)paymentRequest.signature().data(), paymentRequest.signature().size(), pubkey)) {
Edit: this is also something to check: https://github.com/terracoin/terracoin/commit/af1177dd54623ed562a8f8d4f8fba89efc88db1a
under debian it was possible to install an older libssl-dev lib
sudo apt-get install libssl1.0-dev
There is a work around in 0.13:
I have the same problem on arch @allesklaar
Compile using the depends folder which provides all required dependencies.
Compiling 64bit Linux daemon
cd depends/
make HOST=x86_64-pc-linux-gnu
cd ..
./autogen.sh
./configure --prefix=`pwd`/depends/x86_64-pc-linux-gnu --enable-static --disable-shared
make
My issue was fixed using @sassman 's suggestion of using older version of libssl-dev.
@sassman 's suggestion of using the older version of libssl-dev resolved the issue for me as well
fixed nice!
@sassman 's suggestion helped me compile the CLAM client on raspberry pi!
I have made a few commits on the 2.1.0 branch which should allow you to build against the current version of OpenSSL.
Please try it and let me know how it goes.
you need update bignum issue
bn = BN_new(); then on variable if (!BN_copy(bn, b.bn))
this example~
https://github.com/Nur1Labs/smol/blob/master/src/bignum.h
note don't copy all files just important variable
This is Arch Linux. The OpenSSL version here currently is 1.1.0.e. With this version Feathercoin 0.9.6.1 branch fails to build as follows: