(A previous attempt to submit this never appeared, the mailing list email problems again, perhaps? Attempting to make the Net::SSLeay module in the normal fashion (perl Makefile.pl/make) causes: [First perl Makefile.pl invocation] > *** Could not figure out which C compiler was used to compile /usr/bin/openssl. It is essentiall that OpenSSL, perl, and Net::SSLeay are compiled with the same compiler and flags. Mixing and matching compilers is not supported. at Makefile.PL line 132. > Checking if your kit is complete... > Looks good > Checking if your kit is complete... > Looks good > > Warning: I could not locate your pod2man program. Please make sure, > your pod2man program is in your PATH before you execute 'make' > > Writing Makefile for Net::SSLeay::Handle > > Warning: I could not locate your pod2man program. Please make sure, > your pod2man program is in your PATH before you execute 'make' > > Writing Makefile for Net::SSLeay > [root@xxx Net_SSLeay.pm-1.22]# First, explanation as to these odd warnings? Has Red Hat compiled OpenSSL and Perl with different compiler than is present in Shrike? Why the warning about pod2man, which is indeed in /usr/bin/pod2man and the path? On to the first make attempt: > [root@xxx Net_SSLeay.pm-1.22]# make > Makefile:88: *** missing separator. Stop. Researching in this list found only the following: > > Anyone having problems with installing Perl Modules. I am > > having a lot of problems getting them to compile and > > install. I have tried using CPAN and downloading the > > source. Either way they fail. Most fail complaining about > > the Makefile being wrong. Any help or suggestions? > > Yep. Known issue. All due to Unicode. You have a couple of choices but the easiest one is to edit your /etc/sysconfig/i18n to the following: > > LANG="en_US.en" > SUPPORTED="en_US.en" > SYSFONT="latarcyrheb-sun16" > LC_COLLATE="C" > > and then try it again. Should work. > > jb When I tried this (unfortunately, I am unaware of the other "choices"), the following happens: > [root@xxx Net_SSLeay.pm-1.22]# perl Makefile.PL > perl: warning: Setting locale failed. > perl: warning: Please check that your locale settings: > LANGUAGE = (unset), > LC_ALL = (unset), > LC_COLLATE = "C", > LANG = "en_US.en" > are supported and installed on your system. > perl: warning: Falling back to the standard locale ("C"). > Checking for OpenSSL-0.9.6g or newer... > You have OpenSSL-0.9.7a installed in /usr > That's is newer than what this module was tested with (0.9.6g). You should > consider checking if there is a newer release of this module > available. Everything will probably work OK, though. > *** Could not figure out which C compiler was used to compile /usr/bin/openssl. It is essentiall that OpenSSL, perl, and Net::SSLeay are compiled with the same compiler and flags. Mixing and matching compilers is not supported. at Makefile.PL line 132. > Checking if your kit is complete... > Looks good > Checking if your kit is complete... > Looks good > Writing Makefile for Net::SSLeay::Handle > Running '/usr/bin/perl /usr/lib/perl5/5.8.0/ExtUtils/xsubpp temp000 2>&1' exits with status 1 at /usr/lib/perl5/5.8.0/ExtUtils/MM_Unix.pm line 3852. > Writing Makefile for Net::SSLeay > [root@xxx Net_SSLeay.pm-1.22]# make > perl: warning: Setting locale failed. > perl: warning: Please check that your locale settings: > LANGUAGE = (unset), > LC_ALL = (unset), > LC_COLLATE = "C", > LANG = "en_US.en" > are supported and installed on your system. > perl: warning: Falling back to the standard locale ("C"). > perl: warning: Setting locale failed. > perl: warning: Please check that your locale settings: [ same string of error messages repeated several times ] > perl: warning: Falling back to the standard locale ("C"). > cp ptrtstrun.pl blib/lib/Net/ptrtstrun.pl > cp SSLeay.pm blib/lib/Net/SSLeay.pm > AutoSplitting blib/lib/Net/SSLeay.pm (blib/lib/auto/Net/SSLeay) > blib/lib/Net/SSLeay.pm: some names are not unique when truncated to 8 characters: > directory blib/lib/auto/Net/SSLeay: > do_https3.al, do_https2.al, do_https4.al, do_https.al truncate to do_https > get_https.al, get_https3.al, get_https4.al truncate to get_http > head_https.al, head_https3.al, head_https4.al truncate to head_htt > post_https.al, post_https3.al, post_https4.al truncate to post_htt > put_https.al, put_https3.al, put_https4.al truncate to put_http > ssl_read_all.al, ssl_read_until.al, ssl_read_CRLF.al truncate to ssl_read > ssl_write_all.al, ssl_write_CRLF.al truncate to ssl_writ > make[1]: Entering directory `/root/Net_SSLeay.pm-1.22/Net-SSLeay-Handle-0.50' > perl: warning: Setting locale failed. > perl: warning: Please check that your locale settings: > LANGUAGE = (unset), > LC_ALL = (unset), > LC_COLLATE = "C", > LANG = "en_US.en" > are supported and installed on your system. > perl: warning: Falling back to the standard locale ("C"). [ and another huge string of repeatted error message ] > perl: warning: Falling back to the standard locale ("C"). > make[1]: Leaving directory `/root/Net_SSLeay.pm-1.22/Net-SSLeay-Handle-0.50' > /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 > perl: warning: Setting locale failed. > perl: warning: Please check that your locale settings: > LANGUAGE = (unset), > LC_ALL = (unset), > LC_COLLATE = "C", > LANG = "en_US.en" > are supported and installed on your system. > perl: warning: Falling back to the standard locale ("C"). > gcc -c -I/usr/include -I/usr/inc32 -D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS -DDEBUGGING -fno-strict-aliasing -I/usr/local /include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/include/gdbm -O -DVERSION=\"1.22\" -DXS_VERSION=\"1.22\" -fPIC "-I/usr/lib/perl5/5.8.0/i386-linux-thread-multi/CORE" -DPERL5 SSLeay.c > In file included from /usr/include/openssl/ssl.h:179, > from SSLeay.xs:87: > /usr/include/openssl/kssl.h:72:18: krb5.h: No such file or directory > In file included from /usr/include/openssl/ssl.h:179, > from SSLeay.xs:87: > /usr/include/openssl/kssl.h:132: parse error before "krb5_enctype" > /usr/include/openssl/kssl.h:134: parse error before "FAR" [and a pile more of the parse errors] > /usr/include/openssl/ssl.h:931: parse error before '}' token > SSLeay.c: In function `XS_Net__SSLeay_state_string': > SSLeay.c:2597: warning: assignment discards qualifiers from pointer target type > SSLeay.c: In function `XS_Net__SSLeay_rstate_string': > SSLeay.c:2614: warning: assignment discards qualifiers from pointer target type > SSLeay.c: In function `XS_Net__SSLeay_state_string_long': > SSLeay.c:2631: warning: assignment discards qualifiers from pointer target type > SSLeay.c: In function `XS_Net__SSLeay_rstate_string_long': > SSLeay.c:2648: warning: assignment discards qualifiers from pointer target type > SSLeay.c: In function `XS_Net__SSLeay_alert_desc_string': > SSLeay.c:4729: warning: assignment discards qualifiers from pointer target type > SSLeay.c: In function `XS_Net__SSLeay_alert_desc_string_long': > SSLeay.c:4746: warning: assignment discards qualifiers from pointer target type > SSLeay.c: In function `XS_Net__SSLeay_alert_type_string': > SSLeay.c:4763: warning: assignment discards qualifiers from pointer target type > SSLeay.c: In function `XS_Net__SSLeay_alert_type_string_long': > SSLeay.c:4780: warning: assignment discards qualifiers from pointer target type > SSLeay.xs: In function `XS_Net__SSLeay_get_client_random': > SSLeay.xs:3411: dereferencing pointer to incomplete type > SSLeay.xs: In function `XS_Net__SSLeay_get_server_random': > SSLeay.xs:3418: dereferencing pointer to incomplete type > make: *** [SSLeay.o] Error 1 > [root@xxx Net_SSLeay.pm-1.22]# Am I missing some *optional* Red Hat components that are required to build *standard* Perl CPAN modules (or set up the locale to do so, which is in practice the same thing) or what? According to the Net::SSLeay documentation: > RedHat 9.0 is broken (complain to RedHat about that). Only supported way to build Net::SSLeay (on any platform) is > > 1. Make note of which C compiler you are using (possibly set your PATH appropriately) > 2. Build openssl from sources (do not use those evil binaries or rpms or whatever packages) > 3. Build perl from sources with same compiler and substantially same compiler flags as you used for openssl (do not use evil binaries) > 4. Build Net::SSLeay from sources against the perl and openssl you built in previous steps > > Do not write me complaining about the brokenness of RedHat 9. If you do not follow above receipe, I will ignore your support request. If I get too many RedHat 9 mails, I'll add them to my spam filter. > Clearly there seems to me a difference of opinion between this and Red Hat's views. I am only concerned with whether or not it is going to be fixed; otherwise the company I work for will have to, evidently, shift to another still-compatable distribution. -- Norm Mackey