Hello, I'm attempting to build opensssh-4.3p2 using openssl-0.9.8b on a Solaris 10 x64 machine. I use the gcc complier supplied by the Solaris 10x86 distribution under the package (SUNWgcc). My PATH is set to /usr/sbin:/usr/bin:/usr/sfw/bin I get the following error during configure # ./configure --prefix=/opt/openssh --with-ssl-dir=/var/tmp/make_ssh/openssl-0.9.8b checking for gcc... gcc checking for C compiler default output file name... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ANSI C... none needed checking build system type... i386-pc-solaris2.10 checking host system type... i386-pc-solaris2.10 checking whether byte ordering is bigendian... no checking for gawk... no checking for mawk... no checking for nawk... nawk checking how to run the C preprocessor... /lib/cpp checking for ranlib... : checking for a BSD-compatible install... ./install-sh -c checking for egrep... egrep checking for ar... no checking for cat... /usr/bin/cat checking for kill... /usr/bin/kill checking for perl5... no checking for perl... /usr/bin/perl checking for sed... /usr/bin/sed checking for ent... no checking for bash... /usr/bin/bash checking for ksh... (cached) /usr/bin/bash checking for sh... (cached) /usr/bin/bash checking for sh... /usr/bin/sh checking for groupadd... /usr/sbin/groupadd checking for useradd... /usr/sbin/useradd checking for pkgmk... yes checking for special C compiler options needed for large files... no checking for _FILE_OFFSET_BITS value needed for large files... no checking for _LARGE_FILES value needed for large files... no configure: error: *** 'ar' missing, please install or fix your $PATH *** Thoughts? Thanks in advance..
"ar" is usually in /usr/ccs/bin on Solaris.
Thanks for that. I reliazed there was an issue with the PATH. I've corrected the PATH, however now I get the following error: checking whether snprintf correctly terminates long strings... yes checking whether vsnprintf returns correct values on overflow... yes checking whether snprintf can declare const char *fmt... yes checking whether system supports SO_PEERCRED getsockopt... no checking whether getpgrp requires zero arguments... yes checking OpenSSL header version... 90802f (OpenSSL 0.9.8b 04 May 2006) checking OpenSSL library version... 90704f (OpenSSL 0.9.7d 17 Mar 2004) checking whether OpenSSL's headers match the library... no configure: error: Your OpenSSL headers do not match your library. Check config.log for details. I specify 0.9.8b in the ./configure statement but it is finding 0.9.7d god knows where. The contrib/findssh.sh takes forever without reporting anything
(In reply to comment #2) > I specify 0.9.8b in the ./configure statement but it is finding 0.9.7d > god knows where. What exact arguments did you give to configure? > The contrib/findssh.sh takes forever without reporting > anything findssl.sh is a horrible nasty hack (and I say that as its author :-) but I can't imagine why it's not working for you. Could you please run "sh -x findssl.sh" and attach the output to this bug (please use "Create Attachment" rather than pasting it into the comment field). Also, you can have a look for any extra libcrypto files on your system ("find /lib /usr -name libcrypto\* -print").
Created attachment 1154 [details] Your OpenSSL headers do not match your library. I've installed zlib 1.2.3 for Solaris 10 x86. Build openssl 0.9.8b and installed under /usr/local. Attempting to make openssh 4.3p2 under /opt/openssh. However it complains regarding the versions of OpenSSL. - "sh -x findssl" complains about no "locate" variable in the PATH. # sh -x findssl.sh CC=gcc STATIC=-static + trap rm -f conftest.c INT HUP TERM + rm -f findssl.log + cat #include <stdio.h> int main(){printf("0x%08xL\n", SSLeay());} DEFAULT_LIBPATH=/usr/lib:/usr/local/lib LIBPATH=/usr/lib:/usr/local/lib LD_LIBRARY_PATH=/usr/lib:/usr/local/lib LIBRARY_PATH=/usr/lib:/usr/local/lib + export LIBPATH LD_LIBRARY_PATH LIBRARY_PATH + echo Searching for OpenSSL header files. Searching for OpenSSL header files. + which locate + [ -x no locate in /usr/sbin /usr/bin /usr/ccs/bin /usr/ucb /usr/local ] + find / -name opensslv.h -print - the configure statement is as follows: ./configure --prefix=/opt/openssh --with-ssl-dir=/usr/local/ssl The error generated is: checking OpenSSL header version... 90802f (OpenSSL 0.9.8b 04 May 2006) checking OpenSSL library version... 90704f (OpenSSL 0.9.7d 17 Mar 2004) checking whether OpenSSL's headers match the library... no configure: error: Your OpenSSL headers do not match your library.
Created attachment 1155 [details] Your OpenSSL headers do not match your library. I've installed zlib 1.2.3 for Solaris 10 x86. Build openssl 0.9.8b and installed under /usr/local. Attempting to make openssh 4.3p2 under /opt/openssh. However it complains regarding the versions of OpenSSL. - "sh -x findssl" complains about no "locate" variable in the PATH. # sh -x findssl.sh CC=gcc STATIC=-static + trap rm -f conftest.c INT HUP TERM + rm -f findssl.log + cat #include <stdio.h> int main(){printf("0x%08xL\n", SSLeay());} DEFAULT_LIBPATH=/usr/lib:/usr/local/lib LIBPATH=/usr/lib:/usr/local/lib LD_LIBRARY_PATH=/usr/lib:/usr/local/lib LIBRARY_PATH=/usr/lib:/usr/local/lib + export LIBPATH LD_LIBRARY_PATH LIBRARY_PATH + echo Searching for OpenSSL header files. Searching for OpenSSL header files. + which locate + [ -x no locate in /usr/sbin /usr/bin /usr/ccs/bin /usr/ucb /usr/local ] + find / -name opensslv.h -print - the configure statement is as follows: ./configure --prefix=/opt/openssh --with-ssl-dir=/usr/local/ssl The error generated is: checking OpenSSL header version... 90802f (OpenSSL 0.9.8b 04 May 2006) checking OpenSSL library version... 90704f (OpenSSL 0.9.7d 17 Mar 2004) checking whether OpenSSL's headers match the library... no configure: error: Your OpenSSL headers do not match your library.
(In reply to comment #5) I suspect you built OpenSSL as a shared library. From the config.log: gcc [options] -I/usr/local/ssl -L/usr/local/ssl -R/usr/local/ssl conftest.c Those should be -I/usr/local/ssl/include -L/usr/local/ssl/lib -R/usr/local/ssl/lib but I'm not sure why it's wrong. What is in /usr/local/ssl? Anyway, please try: $ LD_LIBRARY_PATH=/usr/local/ssl/lib:/usr/local/ssl:/usr/lib:/lib $ export LD_LIBRARY_PATH $ ./configure --prefix=/opt/openssh --with-ssl-dir=/usr/local/ssl > - "sh -x findssl" complains about no "locate" variable in the PATH. That's nothing to worry about. Locate is only used as an optimization and the script will fall back to "find" if it's not present. Is there any more output after the "find"? If so please attach it.
Since there has been no additional information forthcoming, I am closing this bug. If you can provide the additional information requested then please reopen the bug and add it.
Close resolved bugs after release.