Subject: | can local::lib help with this? |
Date: | Mon, 31 Jan 2011 23:46:54 -0600 |
To: | bugs-local-lib [...] rt.cpan.org |
From: | Caleb Cushing <xenoterracide [...] gmail.com> |
DBI object version 1.616 does not match $DBI::VERSION 1.615 at
/usr/lib/perl5/5.8.8/i686-linux/DynaLoader.pm line 247.
BEGIN failed--compilation aborted at
/root/bin/pwtemp_modules/lib/perl5/DBI.pm line 268.
Compilation failed in require at /root/bin/pwtemp line 340.
BEGIN failed--compilation aborted at /root/bin/pwtemp line 340.
I tried doing the following in our script,
use strict;
use lib '/root/local-lib/lib/perl5'; # path to local::lib install
use local::lib '~/bin/pwtemp_modules'; # path to a local-lib for this script
line 339 - 340 is simply
if ($action =~ /^setwp$/) {
use DBI;
$targetuser =~ /^([a-zA-Z0-9\_]+)$/;
The problem seems to be that the system DBI is newer than the
local::lib . this script was originally written with just use lib, but
I tried to get away from that by modifying it with local::lib.
putting local::lib in bashrc isn't an option.
in this case killing DBI is actually a long term option, but I fear
that since a local library set is still needed that similar behavior
could occur in the future, and I'm wondering if there's any way that
local::lib could prevent this, or perhaps why it isn't in this case...
unfortunately I can't share the whole script as I don't own the code
for it
--
Caleb Cushing
http://xenoterracide.com