| Summary: | OpenSSL headers do not match your library | ||
|---|---|---|---|
| Product: | Portable OpenSSH | Reporter: | Alb3 <k3rmit> |
| Component: | Build system | Assignee: | OpenSSH Bugzilla mailing list <openssh-bugs> |
| Status: | CLOSED FIXED | ||
| Severity: | normal | CC: | dtucker |
| Priority: | P1 | Keywords: | help-wanted |
| Version: | -current | ||
| Hardware: | ix86 | ||
| OS: | BSDI | ||
|
Description
Alb3
2002-07-04 19:45:11 AEST
Which distribution and release? What was the actual error message? (Generally you'll need to capture the last 10-15 lines.) And were all those exclamation marks really necessary? Why are you trying to build with --with-rand-helper on Linux? Linux has a perfectly good /dev/random and /dev/urandom, which OpenSSL will use by default. No external entropy gathering process is necessary. checking whether OpenSSL's headers match the library... no configure: error: Your OpenSSL headers do not match your library On BSD/OS 4.2 with OpenSSL 0.9.6d, no problem configuring and compiling 3.1p1, but both 3.3p1 and 3.4p1 ended configuration with the above error message. I checked but did not find unknown duplicate header files from previous versions of OpenSSL. Perhaps I was looking at the wrong places. Best regards David WU dyw@iohk.com some bsd/os patch for bsd/os 4.2 did update OpenSSL, but failed to update either libcrypto.a or the includes. please tell bsdi. Get this error running ./configure on openssh-3.4p1: checking whether OpenSSL's headers match the library... no configure: error: Your OpenSSL headers do not match your library Installed openssl-0.9.6d and openssl-engine-0.9.6d to try to correct this error, but still got the same result. Didn't see the resolution, even though the bug is marked "resolved". Sorry if I missed it; please point it out to me. Thanks for your work on this problem -Kevin Zembower kzembower@jhuccp.org It's normally an openssl installation problem. Check your config.log. Then check your system for multiple libcrypto.a's, libcrypto.so's and/or opensslv.h's. FYI I've put up some hints and a tool for diagnosing this type of problem up on http://www.zip.com.au/~dtucker/openssh/. The tool (hopefully) finds all instances of OpenSSL and displays their versions and there's a patch to configure that displays the version it finds. With these you might be able to determine which ones configure is using. Currently tested on Redhat with GCC only. Example output: $ ./findssl.sh Searching for OpenSSL header files. 0x0090604fL /usr/include/openssl/opensslv.h 0x0090604fL /usr/local/ssl/include/openssl/opensslv.h Searching for OpenSSL shared library files. 0x0090602fL /lib/libcrypto.so.0.9.6b 0x0090602fL /lib/libcrypto.so.2 0x0090581fL /usr/lib/libcrypto.so.0 0x0090602fL /usr/lib/libcrypto.so 0x0090581fL /usr/lib/libcrypto.so.0.9.5a 0x0090600fL /usr/lib/libcrypto.so.0.9.6 0x0090600fL /usr/lib/libcrypto.so.1 Searching for OpenSSL static library files. 0x0090602fL /usr/lib/libcrypto.a 0x0090604fL /usr/local/ssl/lib/libcrypto.a Darren, thank you so much for your help. With your guidance, I was able to get
OpenSSH 3.4.1 installed on my three remaining hosts.
For what it's worth, here's some of my notes.
The patch at your page didn't want to work at first. Here's what I did to make
it work:
centernet:/tmp/openssh-3.4p1 # patch -i tucker.patch configure.ac
patching file configure.ac
Hunk #1 FAILED at 769.
1 out of 1 hunk FAILED -- saving rejects to file configure.ac.rej
centernet:/tmp/openssh-3.4p1 # cat configure.ac.rej
***************
*** 769,777 ****
AC_MSG_CHECKING([whether OpenSSL's headers match the library])
AC_TRY_RUN(
[
#include <string.h>
#include <openssl/opensslv.h>
- int main(void) { return(SSLeay() == OPENSSL_VERSION_NUMBER ? 0 : 1); }
],
[
AC_MSG_RESULT(yes)
--- 769,781 ----
AC_MSG_CHECKING([whether OpenSSL's headers match the library])
AC_TRY_RUN(
[
+ #include <stdio.h>
#include <string.h>
#include <openssl/opensslv.h>
+ int main(void) {
+ fprintf(stderr,"OpenSSL library %x headers %x\n", SSLeay(),
OPENSSL_VERSION_NUMBER);
+ exit(SSLeay() == OPENSSL_VERSION_NUMBER ? 0 : 1);
+ }
],
[
AC_MSG_RESULT(yes)
centernet:/tmp/openssh-3.4p1 # patch -i tucker.patch -F 3 configure.ac
patching file configure.ac
Hunk #1 succeeded at 774 with fuzz 3 (offset 5 lines).
centernet:/tmp/openssh-3.4p1 #
As you can see, I increased the 'fuzz factor' (-F) to three from the default of
2.
One two of my three hosts that failed in the OpenSSH install, the findssl.sh
script found differing libraries, but on the third, it didn't find any libraries
at all.
Regardless, all these systems were SuSE 7.1 or 7.2. I used 'rpm -e --nodeps
openssl' to remove the previous version (I don't use any of the dependancies
that it reported broken), then reinstalled OpenSSL (not the engine) 0.9.6d.
After that, the installation of OpenSSH 3.4 went normally.
Thank you again for your work on this problem
-Kevin Zembower
Mass change of RESOLVED bugs to CLOSED |