Bug 76858

Summary: Net::SSLeay Make Install Error
Product: [Retired] Red Hat Linux Reporter: -M <callihn>
Component: opensslAssignee: Tomas Mraz <tmraz>
Status: CLOSED NOTABUG QA Contact: Brian Brock <bbrock>
Severity: medium Docs Contact:
Priority: high    
Version: 8.0CC: bbb, bishop
Target Milestone: ---   
Target Release: ---   
Hardware: i586   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2005-02-04 14:46:24 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description -M 2002-10-28 11:18:57 UTC
Description of Problem:
Attempting to make install Net::SSleay I recieve an error which looks to be an
issue with openssl itself?

Version-Release number of selected component (if applicable):
OpenSSL 0.9.6b [engine] 9 Jul 2001


How Reproducible:
Attempt installation of Net::SSLeay

sh-2.05b# make install
make[1]: Entering directory `/root/Net_SSLeay.pm-1.20/Net-SSLeay-Handle-0.50'
Manifying ../blib/man3/Net::SSLeay::Handle.3pm
make[1]: Leaving directory `/root/Net_SSLeay.pm-1.20/Net-SSLeay-Handle-0.50'
gcc -c  -I/usr/include -I/usr/inc32 -D_REENTRANT -D_GNU_SOURCE
-fno-strict-aliasing -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
-I/usr/include/gdbm -O   -DVERSION=\"1.20\" -DXS_VERSION=\"1.20\" -fPIC
"-I/usr/lib/perl5/5.8.0/i386-linux-thread-multi/CORE"   SSLeay.c
cc1: warning: changing search order for system directory "/usr/include"
cc1: warning:   as it has already been specified as a non-system directory
In file included from /usr/include/openssl/evp.h:89,
                 from /usr/include/openssl/x509.h:67,
                 from /usr/include/openssl/ssl.h:69,
                 from SSLeay.xs:80:
/usr/include/openssl/des.h:193: parse error before '&' token
make: *** [SSLeay.o] Error 1

Also Might I note this seems to be an old version which I was also reminded about.

Comment 1 Rob Brown 2003-01-06 19:09:13 UTC
Yeah, I got the same errors with verion 1.20: 
 
http://search.cpan.org/CPAN/authors/id/S/SA/SAMPO/Net_SSLeay.pm-1.20.tar.gz 
 
I have not reviewed the exact changes between 1.20 and 1.21, but 1.21 works 
now: 
 
http://search.cpan.org/CPAN/authors/id/S/SA/SAMPO/Net_SSLeay.pm-1.21.tar.gz 
 
But there are plenty other modules that still fail: 
 
http://search.cpan.org/CPAN/authors/id/T/TJ/TJMATHER/Crypt-OpenSSL-DSA-0.10.tar.gz 
 
$ make 
cp lib/Crypt/OpenSSL/DSA.pm blib/lib/Crypt/OpenSSL/DSA.pm 
cp lib/Crypt/OpenSSL/DSA/Signature.pod 
blib/lib/Crypt/OpenSSL/DSA/Signature.pod 
/usr/bin/perl /usr/lib/perl5/5.8.0/ExtUtils/xsubpp  -typemap 
/usr/lib/perl5/5.8.0/ExtUtils/typemap -typemap typemap  DSA.xs > DSA.xsc && mv 
DSA.xsc DSA.c 
gcc -c   -D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -D_LARGEFILE_SOURCE 
-D_FILE_OFFSET_BITS=64 -I/usr/include/gdbm -O2 -march=i386 -mcpu=i686   
-DVERSION=\"0.10\" -DXS_VERSION=\"0.10\" -fpic 
"-I/usr/lib/perl5/5.8.0/i386-linux-thread-multi/CORE"   DSA.c 
In file included from /usr/include/openssl/evp.h:89, 
                 from /usr/include/openssl/pem.h:68, 
                 from DSA.xs:13: 
/usr/include/openssl/des.h:193: parse error before '&' token 
make: *** [DSA.o] Error 1 
 
http://search.cpan.org/CPAN/authors/id/C/CH/CHAMAS/Crypt-SSLeay-0.45.tar.gz 
 
$ make 
cp lib/Crypt/SSLeay/X509.pm blib/lib/Crypt/SSLeay/X509.pm 
cp lib/Net/SSL.pm blib/lib/Net/SSL.pm 
cp SSLeay.pm blib/lib/Crypt/SSLeay.pm 
cp lib/Crypt/SSLeay/CTX.pm blib/lib/Crypt/SSLeay/CTX.pm 
cp lib/Crypt/SSLeay/Conn.pm blib/lib/Crypt/SSLeay/Conn.pm 
cp lib/Crypt/SSLeay/MainContext.pm blib/lib/Crypt/SSLeay/MainContext.pm 
cp lib/Crypt/SSLeay/Err.pm blib/lib/Crypt/SSLeay/Err.pm 
/usr/bin/perl /usr/lib/perl5/5.8.0/ExtUtils/xsubpp  -typemap 
/usr/lib/perl5/5.8.0/ExtUtils/typemap -typemap typemap  SSLeay.xs > SSLeay.xsc 
&& mv SSLeay.xsc SSLeay.c 
gcc -c  -I/usr/include -D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing 
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/include/gdbm -O2 -march=i386 
-mcpu=i686   -DVERSION=\"0.45\" -DXS_VERSION=\"0.45\" -fpic 
"-I/usr/lib/perl5/5.8.0/i386-linux-thread-multi/CORE"   SSLeay.c 
cc1: warning: changing search order for system directory "/usr/include" 
cc1: warning:   as it has already been specified as a non-system directory 
In file included from /usr/include/openssl/evp.h:89, 
                 from /usr/include/openssl/x509.h:67, 
                 from /usr/include/openssl/ssl.h:69, 
                 from crypt_ssleay_version.h:1, 
                 from SSLeay.xs:20: 
/usr/include/openssl/des.h:193: parse error before '&' token 
make: *** [SSLeay.o] Error 1 
 

Comment 3 Bishop Clark 2003-05-31 10:12:45 UTC
here's the change 1.20 => 1.21 that also affects us here:


--- Net_SSLeay.pm-1.20/Makefile.PL      Fri Aug 16 13:56:28 2002
+++ Net_SSLeay.pm-1.21/Makefile.PL      Wed Oct 30 02:35:48 2002
@@ -159,7 +159,7 @@
     NAME       => 'Net::SSLeay',
     VERSION_FROM => 'SSLeay.pm', # finds $VERSION
     DIR         => [ 'Net-SSLeay-Handle-0.50' ],
-    DEFINE     => '',     # e.g., '-DHAVE_SOMETHING'
+    DEFINE      => '-DPERL5',   # perl-5.8/gcc-3.2 needs this
     DISTNAME    => 'Net_SSLeay.pm',
     dist        => { COMPRESS => 'gzip', SUFFIX => 'gz', },
     LIBS       => ["-L$openssl_path -L$openssl_path/lib
-L$openssl_path/out32dll $libs"],


The fix?  Ensure that the new, unannounced but required -DPERL5 is in your
compile options.

Comment 4 Rob Brown 2003-06-02 15:50:33 UTC
The following modules have been repaired by adding that magic option you   
specified. 
 
Net::SSLeay 
Crypt::OpenSSL::DSA 
Crypt::OpenSSL::RSA 
 
However, Crypt::SSLeay appears to still have the same problem.