philharbour has asked for the wisdom of the Perl Monks concerning the following question:

Hi there, Can anyone help with makemaker? I'm wanting to install DBI and DBD to custom directories. I've downloaded and unzipped the tar's. Then using Perl with the PREFIX parameter which has worked great for DBI. The perl5 perl_site etc all in the custom directory. The problem is when i then try to build DBD::Oracle it throws up an error that the DBI version is too old. I've also been able to run a perl script using the "use lib blah blah blah' and checked that the DBI version is indeed correct at this location. I've updated the Environment variable PERLLIB to reflect the newly installed DBI module location but no joy Any ideas? Thanks for any pointers, or advice on how i should go about installing DBI and DBD::Oracle to a custom directory Regards Phil

Replies are listed 'Best First'.
Re: MakeMaker custom directory
by serf (Chaplain) on Dec 17, 2009 at 11:55 UTC
      Hi there, thanks for the reply. I've exported the environment variable but with no success, still getting the same error; DBI version 1.51 required--this is only version 1.32 at Makefile.PL line 19. BEGIN failed--compilation aborted at Makefile.PL line 19. Any other suggestions? Regards Phil Harbour
Re: MakeMaker custom directory
by chuckbutler (Monsignor) on Dec 18, 2009 at 03:08 UTC
    P- you can change the target of the make install by running,for example, somewhere in your home dir:
    $perl Makefile.PL INSTALL_BASE=~/perl/xlib $make $make test $make install . . . perl -I~/perl/xlib/lib script

    where the module install will start at ~/perl/xlib/lib/...

    so, you need to pre-pend this directory to @INC using the -I on the command line or use lib DIR;

    Please consult the document for module ExtUtils::MakeMaker

      Hi, A combination of both has solved it, I'm up and running again, thanks so much to you both for lending a hand. Cheers Phil