-
Notifications
You must be signed in to change notification settings - Fork 648
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
invalid use of incomplete type ‘BIGNUM {aka struct bignum_st}’ #327
Comments
You can build on Ubuntu and use binaries on Archlinux (quick hack) |
Which openssl version? |
|
Should work with openssl 1.0.2. |
there is a commit by @nathanhourt about this here: |
There are different fc patches in steem-fc and eos-fc that attempt to enable OpenSSL 1.1.x compatibility. However, when I tried to integrate them, I still ran into issues with Boost that I was not able to resolve. I believe eos-fc does not have the issue because it has stripped out some parts of fc that they don't need. I don't remember the details with steem-fc, it might be worth another shot looking at their patch(es) but I think they may also be stripping out some parts of fc soon. I ended up just noting that BitShares requires an OpenSSL older than 1.1.0 (just like we require Boost 1.60 or older). I made notes about this in the README and the wiki https://github.com/bitshares/bitshares-core/wiki |
Related: steemit/fc#18 |
In eos, we stripped out all of fc's threading, fibering, and scheduling stuff which all required old boost, so eos-fc now supports current boost, and no longer supports fibers. It also supports current openssl. I don't remember exactly, but there might have been some conflicts between old boost and new openssl which would be why you can't update openssl without also updating boost. The main issue for BTS is that it uses fc's fibers, so until it gives up those, it's in a bad way. |
From
|
Sounds interesting, but they have just excluded the p2p code from the build :-/ |
Well, I just wanted to note the results of my (poor) research and let everyone know that the p2p code is what makes us use boost <=1.60 .. and that when/if we fix this, we can also add nathans fix for the openssl-1.1 compatibility (bitshares/bitshares-fc@fee06a4) |
Yes, that is an important piece of information. |
Ubuntu 18.04 LTS defaults to OpenSSL 1.1.0g |
I believe this ticket has been fixed by merging in the fc changes for OpenSSL 1.1. Hence, compiling the lastest bitshares-core/develop branch should compile fine with OpenSSL versions 1.0 or 1.1. See #921 I have tested this on Ubuntu 16.04//Boost 1.63// OpenSSL 1.0.2g as well as their branch openssl-1.1-stable. No compilation errors were encountered. I'll leave this ticket open for a while to see if anyone thinks there is still a problem. |
I have updated my system (Archlinux) and no longer can compile BitShares (or peerplays...)
This seems to be a fc issue.
@dnotestein peerplays affected too!
In bitcoin, they seemed to have had a similar issue related to openSSL:
bitcoin/bitcoin#7086
There, they seemed to have replaced the C++ implementation of openssl's BIGNUM by something else:
laanwj/bitcoin@4ec3561
Logs
The text was updated successfully, but these errors were encountered: