Skip Menu |

This queue is for tickets about the DBI CPAN distribution.

Report information
The Basics
Id: 7896
Status: resolved
Priority: 0/
Queue: DBI

People
Owner: Nobody in particular
Requestors: Marek.Rouchal [...] gmx.net
Cc:
AdminCc:

Bug Information
Severity: Critical
Broken in: (no value)
Fixed in: (no value)



Subject: DBI-1.44: unixify() not available
Environment: perl-5.8.5 on Linux (RH7.2) and Solaris/Sparc 8, built with gcc-3.2.3, ithreads, shared libperl The tests of DBI-1.44 run ok, but when building e.g. DBD::SQLite with it, errors appear: $...DBD-SQLite-1.06> perl Makefile.PL Checking if your kit is complete... Looks good Undefined subroutine &DBI::DBD::unixify called at /opt/perl_5.8.5/lib/i686-linux-thread-multi/DBI/DBD.pm line 3741. These are because the unixify() and vmsify() subs are not defined (or not imported). I am not a VMS expert, but undoing the diffs below (DBI::DBD) fixed the problem. Cheers, Marek @@ -3738,8 +3738,8 @@ _inst_checks(); return '$(INST_ARCHAUTODIR)' if $is_dbi; my $dbidir = dbd_dbi_dir(); - my @try = map { "$_/auto/DBI" } @INC; - my @xst = grep { -f "$_/Driver.xst" } @try; + my @try = map { vmsify( unixify($_) . "/auto/DBI/" ) } @INC; + my @xst = grep { -f vmsify( unixify($_) . "/Driver.xst" ) } @try; Carp::croak("Unable to locate Driver.xst in @try") unless @xst; Carp::carp( "Multiple copies of Driver.xst found in: @xst") if @xst > 1; print "Using DBI $DBI::VERSION (for perl $] on $Config{archname}) installed in $xst[0]\n"; @@ -3753,7 +3753,8 @@ my $dbi_driver_xst= '$(DBI_INSTARCH_DIR)/Driver.xst'; my $xstf_h = '$(DBI_INSTARCH_DIR)/Driver_xst.h'; if ($^O eq 'VMS') { - $dbi_instarch_dir = vmsify($dbi_instarch_dir.'/') unless $is_dbi; + $dbi_instarch_dir = vmsify($dbi_instarch_dir.'/'); + $dbi_instarch_dir =~ s:/$::; # for buggy old vmsify's? $dbi_driver_xst= '$(DBI_INSTARCH_DIR)Driver.xst'; $xstf_h = '$(DBI_INSTARCH_DIR)Driver_xst.h'; }
Thanks!