Bug 1385702 - thrift-0.9.1-17.fc26.5 FTBFS: checking for BN_init in -lcrypto... no
Summary: thrift-0.9.1-17.fc26.5 FTBFS: checking for BN_init in -lcrypto... no
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: thrift
Version: 26
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Will Benton
QA Contact: Fedora Extras Quality Assurance
URL: https://apps.fedoraproject.org/kosche...
Whiteboard:
: 1417764 1424117 (view as bug list)
Depends On:
Blocks: 1383740 F26FTBFS
TreeView+ depends on / blocked
 
Reported: 2016-10-17 14:15 UTC by Petr Pisar
Modified: 2017-04-01 17:04 UTC (History)
6 users (show)

Fixed In Version: thrift-0.9.1-15.el7 thrift-0.10.0-2.fc26
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2017-03-29 20:51:40 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)
build.log from scratch build using compat-openssl10 (229.34 KB, text/plain)
2017-01-31 01:43 UTC, Jonathan Wakely
no flags Details
openssl patch to autoconf (440 bytes, patch)
2017-02-09 18:16 UTC, Mike Miller
no flags Details | Diff
Patch for fix to openssl 1.1.0 (1.05 KB, patch)
2017-02-09 20:19 UTC, Mike Miller
no flags Details | Diff

Description Petr Pisar 2016-10-17 14:15:21 UTC
thrift-0.9.1-17.fc26.5 fails to build in F26:

+ ./configure --build=i686-redhat-linux-gnu --host=i686-redhat-linux-gnu --program-prefix= --disable-dependency-tracking --prefix=/usr --exec-prefix=/usr --bindir=/usr/bin --sbindir=/usr/sbin --sysconfdir=/etc --datadir=/usr/share --includedir=/usr/include --libdir=/usr/lib --libexecdir=/usr/libexec --localstatedir=/var --sharedstatedir=/var/lib --mandir=/usr/share/man --infodir=/usr/share/info --disable-dependency-tracking --disable-static --without-libevent --with-boost=/usr --without-ruby --without-erlang --without-go --without-php --docdir=/usr/share/doc/thrift
[...]
checking for BN_init in -lcrypto... no
configure: error: "Error: libcrypto required."

This is caused by upgrading openssl from 1:1.0.2j-1.fc26 to 1:1.1.0b-1.fc26.

Comment 1 Jonathan Wakely 2017-01-30 22:21:46 UTC
*** Bug 1417764 has been marked as a duplicate of this bug. ***

Comment 2 Jonathan Wakely 2017-01-31 01:43:04 UTC
Created attachment 1246050 [details]
build.log from scratch build using compat-openssl10

I tried changing it to use BuildRequires: compat-openssl10-devel which fixes the configure error, but it fails elsewhere later:

dist:
     [echo] Building libfb303.jar
    [javac] Compiling 3 source files to /builddir/build/BUILD/thrift-0.9.1/contrib/fb303/java/build/classes
    [javac] /builddir/build/BUILD/thrift-0.9.1/contrib/fb303/java/gen-java/com/facebook/fb303/FacebookService.java:9: error: package org.apache.thrift.scheme does not exist
    [javac] import org.apache.thrift.scheme.IScheme;
    [javac]                                ^

Comment 3 Will Benton 2017-01-31 02:09:33 UTC
Hey Jonathan, thanks for the suggested fix. I guess I was trying a scratch build at the same time — I actually got a different failure (and still another failure in mock).  I'll keep looking, though.

Comment 4 Will Benton 2017-01-31 02:13:46 UTC
I wonder if these other random failures point to a parallel make problem. I'll look at that.

Comment 5 Christopher Tubbs 2017-01-31 22:43:55 UTC
Is there any chance that a newer version of thrift might better support the newer version of OpenSSL? I'm very interested in upgrading to at least 0.9.3 for rawhide. See bz#1183877

Comment 6 James E. King, III 2017-02-01 14:21:57 UTC
The latest version of thrift was released early January 2017 and includes fixes work with openssl-1.1.0.

See:

https://issues.apache.org/jira/browse/THRIFT-3207
https://issues.apache.org/jira/browse/THRIFT-3736
https://issues.apache.org/jira/browse/THRIFT-3878

I believe that thrift-0.10.0 would be the best starting point for a release at this time.

Comment 7 Will Benton 2017-02-01 14:56:29 UTC
Christopher, I'd need to double-check, but I think accumulo is the only Fedora package building against Thrift atm.  If that is the case and if 0.9.3 will work for you (or if 0.10.0 will), then we should probably just update the package.

James, thanks for the pointer!  Historically we've had to pin Thrift at a version that works with most of the projects that depend on it because cross-version compatibility has been poor.  (Most upstream projects are more comfortable depending on older versions of libraries than we'd like to ship in Fedora.)  Since bringing Thrift into Fedora, most of the projects depending on it have either dropped a Thrift dependency or have been retired from Fedora.  If Thrift 0.10.0 can be built for Fedora relatively easily and if it works with the projects that depend on it, then it's a good option.

Comment 8 Christopher Tubbs 2017-02-02 03:12:11 UTC
Upstream Accumulo currently uses 0.9.3, but if we can fix this FTBFS by moving to 0.10.0, I'll happily work with upstream Accumulo to make sure their most recent release can be patched to work against 0.10.0, so I can get that version into F26.

Comment 9 Mike Miller 2017-02-09 18:13:54 UTC
I figured out the first problem.  The autoconf was doing a AC_CHECK_LIB on the crypto lib but with a function (BN_init) that doesn't exist in 1.1.0 anymore.  
https://www.openssl.org/docs/man1.0.1/crypto/BN_init.html
https://www.openssl.org/docs/man1.1.0/crypto/BN_new.html

This one is an easy fix and I'll submit a patch but there are other issues with the actual compilation.  I am currently looking into these as well.

Comment 10 Mike Miller 2017-02-09 18:16:21 UTC
Created attachment 1248876 [details]
openssl patch to autoconf

First part of a patch to fix openssl going from 1.0.1 to 1.1.0

Comment 11 Mike Miller 2017-02-09 20:19:52 UTC
Created attachment 1248896 [details]
Patch for fix to openssl 1.1.0

I believe this patch fixes all the bugs related to openssl

Comment 12 Christopher Tubbs 2017-02-09 22:48:05 UTC
Thanks Mike! Also, I commented on bz#1183877 that, as far as Accumulo is concerned, it can use 0.10.0 just fine.

Comment 13 Petr Pisar 2017-02-20 16:13:07 UTC
*** Bug 1424117 has been marked as a duplicate of this bug. ***

Comment 14 Fedora End Of Life 2017-02-28 10:27:35 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 26 development cycle.
Changing version to '26'.

Comment 15 Fedora Update System 2017-03-14 10:41:32 UTC
thrift-0.9.1-15.el7 has been submitted as an update to Fedora EPEL 7. https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2017-95f9ce01bc

Comment 16 Fedora Update System 2017-03-14 10:42:06 UTC
thrift-0.10.0-2.fc26 has been submitted as an update to Fedora 26. https://bodhi.fedoraproject.org/updates/FEDORA-2017-64b8696983

Comment 17 Fedora Update System 2017-03-14 23:19:07 UTC
thrift-0.9.1-15.el7 has been pushed to the Fedora EPEL 7 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2017-95f9ce01bc

Comment 18 Fedora Update System 2017-03-15 04:22:52 UTC
thrift-0.10.0-2.fc26 has been pushed to the Fedora 26 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2017-64b8696983

Comment 19 Fedora Update System 2017-03-29 20:51:40 UTC
thrift-0.9.1-15.el7 has been pushed to the Fedora EPEL 7 stable repository. If problems still persist, please make note of it in this bug report.

Comment 20 Fedora Update System 2017-04-01 17:04:39 UTC
thrift-0.10.0-2.fc26 has been pushed to the Fedora 26 stable repository. If problems still persist, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.