On Sat, Feb 17, 2007 at 03:22:14AM -0800, Darren Duncan wrote:
> At 10:13 AM +0000 2/17/07, Tim Bunce wrote:
> >On Fri, Feb 16, 2007 at 08:26:57PM -0800, Darren Duncan wrote:
> > > A simple 'make test' fails on my machine (Perl 5.8.8 no threads, Mac
> >> OS X 10.4.8 PPC, GCC 4.0.1) citing various problems with Gofer.
> >
> >> t/85gofer.................
> >> #   Failed test 'should connect'
> >> #   in t/85gofer.t at line 92.
> >> #   Failed test 'Testing pipeone transport with pedantic policy aborted
> >> # '
> >> #   in t/85gofer.t at line 52.
> >
> >This won't fix the underlying problem but at least we'll get to see the 
> >error:
> >
> >Let me know what it says when you run it with that patch applied.
> >
> >Thanks Darren.
> >
> >Tim.
> 
> So I updated t/85gofer.t and re-ran 'make test'.
> 
> This time, I just showed the output of testing t/85gofer.t rather 
> than the whole test suite.
> 
> FYI, the Perl I ran the original DBI Makefile under is 5.8.8 no 
> threads, installed in a non-standard location (shown in the output 
> below).  My system Perl is 5.8.6 with threads, and I have left it 
> pristine, except for SVK.  So I don't know if the error message is 
> mentioning 5.8.6 because that's my system perl version or if there is 
> some other reason.

The pipeone (and stream) transports use IPC::Open3 to launch perl in a
subprocess that data can be sent to and received from via stdio:

    perl -MDBI::Gofer::Transport::pipeone -e run_one_stdio

To try to make sure the same libs are used by the subprocess, it does this:

    local $ENV{PERL5LIB} = join ":", @INC;

It presumes it'll get the same perl executable because it assumes the
perl being used is the first in the PATH.

Does that help you shed some light on what's happening?

What command did you use to execute Makefile.PL?
Is the PATH the same now as when you executed Makefile.PL?
What does "grep '^FULLPERL' Makefile" show?

Tim.


> t/85gofer.................DBI 
> connect('transport=pipeone;policy=pedantic;dsn=dbi:DBM:dbm_type=SDBM_File;lockfile=0','',...)
>  
> failed: pipeone command failed: Perl lib version (v5.8.8) doesn't match 
> executable version (v5.8.6) at 
> /Volumes/Programming160/Perl/perl588_v6/lib/5.8.8/darwin-2level/Config.pm 
> line 46.
> Compilation failed in require at 
> /Volumes/Programming160/Perl/perl588_v6/lib/5.8.8/darwin-2level/DynaLoader.pm 
> line 25.
> BEGIN failed--compilation aborted at 
> /Volumes/Programming160/Perl/perl588_v6/lib/5.8.8/darwin-2level/DynaLoader.pm 
> line 25.
> Compilation failed in require at 
> /Volumes/Programming160/downloads/DBI-1.54/blib/lib/DBI.pm line 156.
> BEGIN failed--compilation aborted at 
> /Volumes/Programming160/downloads/DBI-1.54/blib/lib/DBI.pm line 156.
> Compilation failed in require at 
> /Volumes/Programming160/downloads/DBI-1.54/blib/lib/DBI/Gofer/Execute.pm line 
> 13.
> BEGIN failed--compilation aborted at 
> /Volumes/Programming160/downloads/DBI-1.54/blib/lib/DBI/Gofer/Execute.pm line 
> 13.
> Compilation failed in require at 
> /Volumes/Programming160/downloads/DBI-1.54/blib/lib/DBI/Gofer/Transport/pipeone.pm
>  line 13.
> BEGIN failed--compilation aborted at 
> /Volumes/Programming160/downloads/DBI-1.54/blib/lib/DBI/Gofer/Transport/pipeone.pm
>  line 13.
> Compilation failed in require.
> BEGIN failed--compilation aborted.
>  at t/85gofer.t line 91

Reply via email to