Skip Menu |

This queue is for tickets about the POE CPAN distribution.

Report information
The Basics
Id: 20990
Status: resolved
Priority: 0/
Queue: POE

People
Owner: Nobody in particular
Requestors: RYBSKEJ [...] cpan.org
Cc:
AdminCc:

Bug Information
Severity: Important
Broken in:
  • 0.36
  • 0.3601
Fixed in: (no value)



Subject: SocketFactory.pm compilation issue with Socket6 on Cygwin
When running the test suite with Socket6 perl module installed on Cygwin (CYGWIN_NT-5.1 erybski 1.5.19(0.150/4/2) 2006-01-20 13:28 i686 Cygwin), I get the following repeated error on any test that involves POE::Wheel::SocketFactory: Your vendor has not defined Socket macro AF_INET6, used at blib/lib/POE/Wheel/SocketFactory.pm line 67 Compilation failed in require at blib/lib/POE/Component/Server/TCP.pm line 19. BEGIN failed--compilation aborted at blib/lib/POE/Component/Server/TCP.pm line 19. Compilation failed in require at (eval 33) line 1. BEGIN failed--compilation aborted at (eval 33) line 1. could not import qw(Component::Server::TCP) at tests/30_loops/00_base/comp_tcp.pm line 22 BEGIN failed--compilation aborted at tests/30_loops/00_base/comp_tcp.pm line 22. Compilation failed in require at tests/30_loops/10_select/comp_tcp.t line 9. # Looks like your test died before it could output anything. The quick solution: Remove Socket6 from perl on Cygwin. My concern is that POE used to check (and skip) tests for Socket6 on cygwin. It appears that the addition of an import of a constant from the Socket6 package is causing POE to now fail before it can even load SocketFactory.pm. An eval closure should be used to check if any of the Socket6::*_INET6 constants are defined or not. Summary of my perl5 (revision 5 version 8 subversion 7) configuration: Platform: osname=cygwin, osvers=1.5.18(0.13242), archname=cygwin-thread-multi-64int uname='cygwin_nt-5.1 inspiron 1.5.18(0.13242) 2005-07-02 20:30 i686 unknown unknown cygwin ' config_args='-de -Dmksymlinks -Duse64bitint -Dusethreads -Uusemymalloc -Doptimize=-O3 -Dman3ext=3pm -Dusesitecustomize' hint=recommended, useposix=true, d_sigaction=define usethreads=define use5005threads=undef useithreads=define usemultiplicity=define useperlio=define d_sfio=undef uselargefiles=define usesocks=undef use64bitint=define use64bitall=undef uselongdouble=undef usemymalloc=n, bincompat5005=undef Compiler: cc='gcc', ccflags ='-DPERL_USE_SAFE_PUTENV -fno-strict-aliasing -pipe -I/usr/local/include', optimize='-O3', cppflags='-DPERL_USE_SAFE_PUTENV -fno-strict-aliasing -pipe -I/usr/local/include' ccversion='', gccversion='3.4.4 (cygming special) (gdc 0.12, using dmd 0.125)', gccosandvers='' intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=12345678 d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12 ivtype='long long', ivsize=8, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8 alignbytes=8, prototype=define Linker and Libraries: ld='ld2', ldflags =' -s -L/usr/local/lib' libpth=/usr/local/lib /lib /usr/lib libs=-lgdbm -ldb -lcrypt -lgdbm_compat perllibs=-lcrypt -lgdbm_compat libc=/usr/lib/libc.a, so=dll, useshrplib=true, libperl=libperl.a gnulibc_version='' Dynamic Linking: dlsrc=dl_dlopen.xs, dlext=dll, d_dlsymun=undef, ccdlflags=' -s' cccdlflags=' ', lddlflags=' -s -L/usr/local/lib' Characteristics of this binary (from libperl): Compile-time options: MULTIPLICITY USE_ITHREADS USE_64_BIT_INT USE_LARGE_FILES USE_SITECUSTOMIZE PERL_IMPLICIT_CONTEXT Locally applied patches: SPRINTF0 - fixes for sprintf formatting issues - CVE-2005-3962 Built under cygwin Compiled at Dec 30 2005 02:44:25 %ENV: CYGWIN=""binmode tty ntsec"" @INC: /usr/lib/perl5/5.8/cygwin /usr/lib/perl5/5.8 /usr/lib/perl5/site_perl/5.8/cygwin /usr/lib/perl5/site_perl/5.8 /usr/lib/perl5/site_perl/5.8/cygwin /usr/lib/perl5/site_perl/5.8 /usr/lib/perl5/vendor_perl/5.8/cygwin /usr/lib/perl5/vendor_perl/5.8 /usr/lib/perl5/vendor_perl/5.8/cygwin /usr/lib/perl5/vendor_perl/5.8 .
Thanks for the bug report. I just committed a fix as revision 2088.