[Net-ssleay-devel] problem making Net::SSLeay 1.32

sampo at symlabs.com sampo at symlabs.com
Fri May 16 14:56:22 UTC 2008


Anthony Kent wrote:
> Hello Sampo,
>
> Please excuse this email if it is not the proper protocol to send it
> direct to you: I'm not a professional developer and am not certain of the
> proper procedure in these matters.

Although I am the original author of Net::SSLeay, I have long ago
passed maintenance responsibility to Mike McCauley and Florian Ragwitz.
Thus I am appropriate support channel only if they have been unresponsive
for extended period of time, i.e. as last resort.

The appropriate mailing list (Cc'd) for support is
net-ssleay-devel at lists.alioth.debian.org

The web site is http://alioth.debian.org/projects/net-ssleay/

> I have been trying for several days to install Net::SSLeay 1.32 on HPUX
> 11.11 with perl 5.10.0 and using gcc version 3.4.6 and openssl 0.9.6c.
>
> I have in fact tried several versions of openssl but had little success
> with any of them. v0.9.6c is the nearest I have come to getting any
> success.
>
> I am continually getting the following when running make:
>
> SSLeay.c: In function `XS_Net__SSLeay_d2i_SSL_SESSION':
> SSLeay.c:2416: warning: passing arg 2 of `d2i_SSL_SESSION' from
> incompatible pointer type
> SSLeay.xs: In function `XS_Net__SSLeay_CTX_set_cert_verify_callback':
> SSLeay.xs:1782: warning: passing arg 3 of
> `SSL_CTX_set_cert_verify_callback' from incompatible pointer type
>
> Can you shed any light onto what the problem is?

They are only warnings. Does the compilation complete anyway? Does
the resultant module function normally?

> Here is the full output:

Looking at this output, I see your real problems are linking related,
please see below.

> pust173:/opt/product/ticm/tonydev/CPAN_libs/Net-SSLeay-1.32>
> /net/hn4k022/opt/product/ticm/build_tools/hp/gnu/make-3.81/bin/make clean
> rm -f \
>           *.a core \
>           SSLeay.c core.[0-9] \
>           blib/arch/auto/Net/SSLeay/extralibs.all core.[0-9][0-9] \
>           SSLeay.bso pm_to_blib.ts \
>           core.[0-9][0-9][0-9][0-9] SSLeay.x \
>           SSLeay.bs perl \
>           tmon.out *.o \
>           pm_to_blib blib/arch/auto/Net/SSLeay/extralibs.ld \
>           blibdirs.ts core.[0-9][0-9][0-9][0-9][0-9] \
>           *perl.core core.*perl.*.? \
>           Makefile.aperl perl \
>           SSLeay.def core.[0-9][0-9][0-9] \
>           mon.out libSSLeay.def \
>           perlmain.c perl.exe \
>           so_locations SSLeay.exp
> rm -rf \
>           t/local/ptr_cast_test examples/key.pem \
>           examples/*.0 examples/cert.pem \
>           sslecho.log tcpecho.log \
>           examples/key.pem.e makecert.err \
>           blib makecert.out
> mv Makefile Makefile.old > /dev/null 2>&1
> pust173:/opt/product/ticm/tonydev/CPAN_libs/Net-SSLeay-1.32>
> /net/hn4k022/opt/product/ticm/build_tools/hp/perl/gcc/5.10.0/bin/perl
> Makefile.PL -t
> Cannot determine perl version info from lib/Net/SSLeay.pm
> Cannot determine license info from lib/Net/SSLeay.pm
> *** Found OpenSSL-0.9.6c installed in
> /net/hn4k022/opt/product/ticm/build_tools/hp/openssl/0.9.6
> *** Be sure to use the same compiler and options to compile your OpenSSL,
> perl,
>     and Net::SSLeay. Mixing and matching compilers is not supported.
> Do you want to run external tests?
> These tests *will* *fail* if you do not have network connectivity. [y]
> *** Module::AutoInstall version 1.03
> *** Checking for Perl dependencies...
> [Core Features]
> - Sub::Uplevel    ...loaded. (0.16)
> - Test::Exception ...loaded. (0.25)
> - Array::Compare  ...loaded. (1.14)
> - Tree::DAG_Node  ...loaded. (1.05)
> - Test::Warn      ...loaded. (0.10)
> - MIME::Base64    ...loaded. (3.07)
> *** Module::AutoInstall configuration finished.
> Checking if your kit is complete...
> Looks good
> Note (probably harmless): No library found for -lz
> Writing Makefile for Net::SSLeay
> pust173:/opt/product/ticm/tonydev/CPAN_libs/Net-SSLeay-1.32>
> /net/hn4k022/opt/product/ticm/build_tools/hp/gnu/make-3.81/bin/make
> cp lib/Net/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
>   do_httpx3.al, do_httpx2.al, do_httpx4.al truncate to do_httpx
>   get_https.al, get_https3.al, get_https4.al, get_http.al, get_http3.al,
> get_http4.al, get_httpx.al, get_httpx3.al, get_httpx4.al truncate to
> get_http
>   head_https.al, head_https3.al, head_https4.al, head_http.al,
> head_http3.al, head_http4.al, head_httpx.al, head_httpx3.al,
> head_httpx4.al truncate to head_htt
>   post_https.al, post_https3.al, post_https4.al, post_http.al,
> post_http3.al, post_http4.al, post_httpx.al, post_httpx3.al,
> post_httpx4.al truncate to post_htt
>   put_https.al, put_https3.al, put_https4.al, put_http.al, put_http3.al,
> put_http4.al, put_httpx.al, put_httpx3.al, put_httpx4.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
>   tcp_read_all.al, tcp_read_until.al, tcp_read_CRLF.al truncate to
> tcp_read
>   tcp_write_all.al, tcp_write_CRLF.al truncate to tcp_writ
> cp lib/Net/SSLeay/Handle.pm blib/lib/Net/SSLeay/Handle.pm
> /net/hn4k022/opt/product/ticm/build_tools/hp/perl/gcc/5.10.0/bin/perl
> "-Iinc"
> /net/hn4k022/opt/product/ticm/build_tools/hp/perl/gcc/5.10.0/lib/5.10.0/ExtUtils/xsubpp
>  -typemap /net/hn4k022/opt/product/ticm/build_too
> ls/hp/perl/gcc/5.10.0/lib/5.10.0/ExtUtils/typemap -typemap typemap
> SSLeay.xs > SSLeay.xsc && mv SSLeay.xsc SSLeay.c
> /net/hn4k022/opt/product/ticm/build_tools/hp/gcc/gcc-3.4.6/bin/gcc -c
> -I/net/hn4k022/opt/product/ticm/build_tools/hp/openssl/0.9.6/include
> -I/net/hn4k022/opt/product/ticm/build_tools/hp/openssl/0.9.6/inc32
> -Iusr/ke
> rberos/include -D_HPUX_SOURCE -mpa-risc-2-0 -DDEBUGGING
> -fno-strict-aliasing -pipe -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2
> -g   -DVERSION=\"1.32\" -DXS_VERSION=\"1.32\" -fPIC
> "-I/net/hn4k022/opt/product/ticm/
> build_tools/hp/perl/gcc/5.10.0/lib/5.10.0/PA-RISC2.0/CORE"   SSLeay.c
> SSLeay.c: In function `XS_Net__SSLeay_d2i_SSL_SESSION':
> SSLeay.c:2416: warning: passing arg 2 of `d2i_SSL_SESSION' from
> incompatible pointer type
> SSLeay.xs: In function `XS_Net__SSLeay_CTX_set_cert_verify_callback':
> SSLeay.xs:1782: warning: passing arg 3 of
> `SSL_CTX_set_cert_verify_callback' from incompatible pointer type
> Running Mkbootstrap for Net::SSLeay ()
> chmod 644 SSLeay.bs
> rm -f blib/arch/auto/Net/SSLeay/SSLeay.sl
> /usr/bin/ld  -b SSLeay.o  -o blib/arch/auto/Net/SSLeay/SSLeay.sl        \
>            -L/net/hn4k022/opt/product/ticm/build_tools/hp/openssl/0.9.6
> -L/net/hn4k022/opt/product/ticm/build_tools/hp/openssl/0.9.6/lib
> -lssl -lcrypto
> \
>
> chmod 755 blib/arch/auto/Net/SSLeay/SSLeay.sl
> cp SSLeay.bs blib/arch/auto/Net/SSLeay/SSLeay.bs
> chmod 644 blib/arch/auto/Net/SSLeay/SSLeay.bs
> Manifying blib/man3/Net::SSLeay.3
> [2] -  Done                    /tmp/nedit README &
> pust173:/opt/product/ticm/tonydev/CPAN_libs/Net-SSLeay-1.32>
> /net/hn4k022/opt/product/ticm/build_tools/hp/gnu/make-3.81/bin/make test
> PERL_DL_NONLAZY=1
> /net/hn4k022/opt/product/ticm/build_tools/hp/perl/gcc/5.10.0/bin/perl
> "-MExtUtils::Command::MM" "-e" "test_harness(0, 'inc', 'blib/lib',
> 'blib/arch')" t/*/*.t t/*/*/*.t
> t/external/08_external.........../usr/lib/dld.sl: Unresolved symbol:
> __udivdi3 (code)  from
> /opt/product/ticm/tonydev/CPAN_libs/Net-SSLeay-1.32/blib/arch/auto/Net/SSLeay/SSLeay.sl
> /usr/lib/dld.sl: Unresolved symbol: __umoddi3 (code)  from
> /opt/product/ticm/tonydev/CPAN_libs/Net-SSLeay-1.32/blib/arch/auto/Net/SSLeay/SSLeay.sl
> /usr/lib/dld.sl: Unresolved symbol: __udivdi3 (code)  from
> /opt/product/ticm/tonydev/CPAN_libs/Net-SSLeay-1.32/blib/arch/auto/Net/SSLeay/SSLeay.sl
> /usr/lib/dld.sl: Unresolved symbol: __umoddi3 (code)  from
> /opt/product/ticm/tonydev/CPAN_libs/Net-SSLeay-1.32/blib/arch/auto/Net/SSLeay/SSLeay.sl
> Can't load
> '/opt/product/ticm/tonydev/CPAN_libs/Net-SSLeay-1.32/blib/arch/auto/Net/SSLeay/SSLeay.sl'
> for module Net::SSLeay: Unresolved external at
> /net/hn4k022/opt/product/ticm/build_tools/hp/perl/gcc/5.10.0/lib/5.
> 10.0/PA-RISC2.0/DynaLoader.pm line 203.
>  at t/external/08_external.t line 7
> Compilation failed in require at t/external/08_external.t line 7.
> BEGIN failed--compilation aborted at t/external/08_external.t line 7.
> t/external/08_external...........dubious
>         Test returned status 215 (wstat 55040, 0xd700)
> t/handle/external/10_destroy...../usr/lib/dld.sl: Unresolved symbol:
> __udivdi3 (code)  from
> /opt/product/ticm/tonydev/CPAN_libs/Net-SSLeay-1.32/blib/arch/auto/Net/SSLeay/SSLeay.sl
> /usr/lib/dld.sl: Unresolved symbol: __umoddi3 (code)  from
> /opt/product/ticm/tonydev/CPAN_libs/Net-SSLeay-1.32/blib/arch/auto/Net/SSLeay/SSLeay.sl
> /usr/lib/dld.sl: Unresolved symbol: __udivdi3 (code)  from
> /opt/product/ticm/tonydev/CPAN_libs/Net-SSLeay-1.32/blib/arch/auto/Net/SSLeay/SSLeay.sl
> /usr/lib/dld.sl: Unresolved symbol: __umoddi3 (code)  from
> /opt/product/ticm/tonydev/CPAN_libs/Net-SSLeay-1.32/blib/arch/auto/Net/SSLeay/SSLeay.sl
> Can't load
> '/opt/product/ticm/tonydev/CPAN_libs/Net-SSLeay-1.32/blib/arch/auto/Net/SSLeay/SSLeay.sl'
> for module Net::SSLeay: Unresolved external at
> /net/hn4k022/opt/product/ticm/build_tools/hp/perl/gcc/5.10.0/lib/5.
> 10.0/PA-RISC2.0/DynaLoader.pm line 203.
>  at
> /opt/product/ticm/tonydev/CPAN_libs/Net-SSLeay-1.32/blib/lib/Net/SSLeay/Handle.pm
> line 7
> Compilation failed in require at
> /opt/product/ticm/tonydev/CPAN_libs/Net-SSLeay-1.32/blib/lib/Net/SSLeay/Handle.pm
> line 7.
> BEGIN failed--compilation aborted at
> /opt/product/ticm/tonydev/CPAN_libs/Net-SSLeay-1.32/blib/lib/Net/SSLeay/Handle.pm
> line 7.
> Compilation failed in require at t/handle/external/10_destroy.t line 17.
> BEGIN failed--compilation aborted at t/handle/external/10_destroy.t line
> 17.
> t/handle/external/10_destroy.....dubious
>         Test returned status 215 (wstat 55040, 0xd700)
> <cut>
> t/local/50_digest................/usr/lib/dld.sl: Unresolved symbol:
> __udivdi3 (code)  from
> /opt/product/ticm/tonydev/CPAN_libs/Net-SSLeay-1.32/blib/arch/auto/Net/SSLeay/SSLeay.sl
> /usr/lib/dld.sl: Unresolved symbol: __umoddi3 (code)  from
> /opt/product/ticm/tonydev/CPAN_libs/Net-SSLeay-1.32/blib/arch/auto/Net/SSLeay/SSLeay.sl
> /usr/lib/dld.sl: Unresolved symbol: __udivdi3 (code)  from
> /opt/product/ticm/tonydev/CPAN_libs/Net-SSLeay-1.32/blib/arch/auto/Net/SSLeay/SSLeay.sl
> /usr/lib/dld.sl: Unresolved symbol: __umoddi3 (code)  from

These missing symbols are supposed to come from libgcc. This is almost
certainly an issue related to HP-UX being bit different than most Unixes.
As developers are unlikely to have tested against HP-UX, it is likely
that the compiler or linker flags that are supplied are not 100%
correct.

You should start debugging efforts by first making sure, by manipulating
LD_LIBRARY_PATH environment variable (or its HP-UX equivalent - use
Google) to make sure the libgcc that belongs to the compiler you
used is found first, before any other libgcc's that you may have
in your system.

If that does not fix it, try manipulating the -L flags that are
used in linking. You can also do some detective work by using
nm -A on the libraries to see that the symbols are there.

Quite frankly, if the LD_LIBRARY_PATH trick does not help, you
are likely to need developer skills.

One more thing: you should use exact same gcc and linker, with same
flags, to compile openssl, perl, and Net::SSLeay. Substituting any
one of those for system supplied binary can lead to problems of the
nature that you describe.

Let's hope others on the list help you now that I have provided
my initial 2 cents.

Cheers,
--Sampo

>/opt/product/ticm/tonydev/CPAN_libs/Net-SSLeay-1.32/blib/arch/auto/Net/SSLeay/SSLeay.sl
> Can't load
> '/opt/product/ticm/tonydev/CPAN_libs/Net-SSLeay-1.32/blib/arch/auto/Net/SSLeay/SSLeay.sl'
> for module Net::SSLeay: Unresolved external at
> /net/hn4k022/opt/product/ticm/build_tools/hp/perl/gcc/5.10.0/lib/5.
> 10.0/PA-RISC2.0/DynaLoader.pm line 203.
>  at t/local/50_digest.t line 6
> Compilation failed in require at t/local/50_digest.t line 6.
> BEGIN failed--compilation aborted at t/local/50_digest.t line 6.
> t/local/50_digest................dubious
>         Test returned status 215 (wstat 55040, 0xd700)
> t/local/kwalitee.................ok
> Failed Test                     Stat Wstat Total Fail  List of Failed
> ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
> t/external/08_external.t         215 55040    ??   ??  ??
> t/handle/external/10_destroy.t   215 55040    ??   ??  ??
> t/handle/external/50_external.t  215 55040    ??   ??  ??
> t/handle/local/05_use.t            1   256     1    1  1
> t/local/03_use.t                   1   256     1    1  1
> t/local/04_basic.t               255 65280     4    8  1-4
> t/local/05_passwd_cb.t           255 65280    13   26  1-13
> t/local/06_tcpecho.t             255 65280     4    8  1-4
> t/local/07_sslecho.t             255 65280    69  138  1-69
> t/local/08_pipe.t                215 55040    ??   ??  ??
> t/local/15_bio.t                 255 65280     7   14  1-7
> t/local/20_autoload.t            255 65280     6   12  1-6
> t/local/30_error.t               215 55040    ??   ??  ??
> t/local/31_rsa_generate_key.t    255 65280    14   28  1-14
> t/local/35_ephemeral.t           255 65280     3    6  1-3
> t/local/50_digest.t              215 55040    ??   ??  ??
> 1 test skipped.
> Failed 16/20 test scripts. 122/142 subtests failed.
> Files=20, Tests=142, 42 wallclock secs (26.32 cusr +  6.07 csys = 32.39
> CPU)
> Failed 16/20 test programs. 122/142 subtests failed.
> make: *** [test_dynamic] Error 255
>
> If you can help at all I would be very grateful.
>
> best regards
>
> Tony Kent
>
>
> -----------------------------------------------------
> Le bureau virtuel
> http://www.lamessagerie.com
>
>





More information about the Net-ssleay-devel mailing list