I guess four times is a charm. ;}b  Tim is very  busy, so he'd have forward
it here anyway.

What error message are you seeing?

The glob (<*.xst>) may be failing because you don't have csh or tcsh
installed.  The annoying dependency of perl's glob() on csh is finally
removed in Perl 5.6, but if you aren't upgrading, you'll need csh or tcsh
for glob() to work.  The pre-build perl from Red Hat probably was built on a
system that had tcsh installed.  If you have a choice when you install tcsh,
have it create a link for csh so it will answer to both names.

The test ($Config{privlibexp} ne $Config{sitelibexp}) controls the file
search for old versions of DBI which installed some files earlier in the
module search path (@INC) than is the current practice.  If you don't delete
the old files, DBI won't work correctly.  It has no bearing on Makefile.PL
failing in line 207 since line 207 is outside the block controlled by the if
statement.
--
Mac :})
** I normally forward private database questions to the DBI mail lists. **
Give a hobbit a fish and he'll eat fish for a day.
Give a hobbit a ring and he'll eat fish for an age.
----- Original Message -----
From: "Sean Cooper" <[EMAIL PROTECTED]>
To: "Tim Bunce" <[EMAIL PROTECTED]>
Cc: <[EMAIL PROTECTED]>
Sent: Friday, February 16, 2001 11:55 AM
Subject: I apologize for this... but what have I done ???


> I apologize in advance for sending this directly to you. I've tried to
post it 3
> times
> to [EMAIL PROTECTED], but for whatever reason it doesn't seem to make it.
>
> This does seem to work BTW ... but I'm a little suspicious of it still. Is
it
> ok?
>
> [EMAIL PROTECTED]
>
>
> For whatever reason perl Makefile.PL fails on my distro (RH 6.1 w/ minor
> patches)
> and mentions something about a glob which fails at line 207 of the
makefile.
>
> I couldn't even get to make install, because make would fail.
>
> I had to patch it like this:
> see " ####### my really bad patch -- " below
>
> sub post_initialize {
>     my($self) = shift;
>
>     if ($Config{privlibexp} ne $Config{sitelibexp}) {
>  warn "
> Warning: By default new modules are installed into your 'site_lib'
> directories. Since site_lib directories come after the normal library
> directories you must delete old DBI files and directories from your
> 'privlib' and 'archlib' directories and their auto subdirectories.
> If you don't have an old version of the DBI installed you can ignore this.
> ";
>  my $find = "find $Config{privlibexp} $Config{archlibexp} ";
>  $find .= "-name 'DB*' -print | sort | uniq";
>  if (open(FIND, "$find |")) {
>      my @old;
>      while(<FIND>) {
>   next unless m:\bDB(I|D$):;
>   next if m:^\Q$Config{sitelibexp}/:;
>   next if m:^\Q$Config{sitearchexp}/:;
>   next if m:^\Q$Config{man3direxp}/:;
>   chop;
>   push @old, $_;
>      }
>      close(FIND);
>      warn "Here's a list of probable old files and directories:\n ",
>       join("\n ",@old),"\n" if @old;
>      warn "Reinstall DBD::* drivers after deleting the listed DBD
> directories.\n"
>   if "@old" =~ /\bDBD$/m;
>      warn "\n";
>  }
>     }
>
>     # install files that DBD's may need
>     my $file;
>     ####### my really bad patch --
>     #foreach $file (qw(DBIXS.h dbi_sql.h dbd_xsh.h dbipport.h), <*.xst>) {
>     foreach $file (qw(DBIXS.h dbi_sql.h dbd_xsh.h dbipport.h),
qw(Driver.xst) )
> {
>  $self->{PM}->{$file} = '$(INST_ARCHAUTODIR)/'.$file;
>     }
>
>     return '';
> }
>
>
> I'm guessing that perl is looking for old DBI | DBD files, and if they
> aren't found, we install the files in the top level of the install
directory.
>
> if ($Config{privlibexp} ne $Config{sitelibexp}) then can I assume
> that it's OK to quote specifically Driver.xst, as it's the only file in
the top
> level?
>
> If so, then why the test???
>
>
> Summary of my perl5 (5.0 patchlevel 5 subversion 3) configuration:
>   Platform:
>     osname=linux, osvers=2.2.5-22smp, archname=i386-linux
>     uname='linux porky.devel.redhat.com 2.2.5-22smp #1 smp wed jun 2
09:11:51 ed
>
> t 1999 i686 unknown '
>     hint=recommended, useposix=true, d_sigaction=define
>     usethreads=undef useperlio=undef d_sfio=undef
>   Compiler:
>     cc='cc', optimize='-O2', gccversion=egcs-2.91.66 19990314/Linux
(egcs-1.1.2
> release)
>     cppflags='-Dbool=char -DHAS_BOOL -I/usr/local/include'
>     ccflags ='-Dbool=char -DHAS_BOOL -I/usr/local/include'
>     stdchar='char', d_stdstdio=undef, usevfork=false
>     intsize=4, longsize=4, ptrsize=4, doublesize=8
>     d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12
>     alignbytes=4, usemymalloc=n, prototype=define
>   Linker and Libraries:
>     ld='cc', ldflags =' -L/usr/local/lib'
>     libpth=/usr/local/lib /lib /usr/lib
>     libs=-lnsl -ldl -lm -lc -lposix -lcrypt
>     libc=, so=so, useshrplib=false, libperl=libperl.a
>   Dynamic Linking:
>     dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-rdynamic'
>     cccdlflags='-fpic', lddlflags='-shared -L/usr/local/lib'
>
>
> Characteristics of this binary (from libperl):
>   Built under linux
>   Compiled at Aug 30 1999 23:09:51
>   @INC:
>     /usr/lib/perl5/5.00503/i386-linux
>     /usr/lib/perl5/5.00503
>     /usr/lib/perl5/site_perl/5.005/i386-linux
>     /usr/lib/perl5/site_perl/5.005
>

Reply via email to