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

Error Message I am getting:

Can't locate object method "require_version" via package "DBI" at /usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/DBD/DB2.pm line 27.

Modules used are: DBD-DB2-1.79 DBI-1.616

PATH Details

PERL5LIB=/usr/local/epods/modules:/usr/local/lib/perl:/usr/lib/perl5/site_perl/5.8.8

LD_LIBRARY_PATH=/usr/local/lib:/usr/local/lib::/lib:/usr/lib:/opt/ibm/db2/V9.7/lib32:/opt/IBM/XMS/lib:/usr/lib/java/jre/lib/ext/x86:/usr/local/axis2c/lib:/usr/X11/lib:/opt/intel/Compiler/lib/ia32:/lib:/usr/lib:/opt/ibm/db2/V9.7/lib32:/opt/IBM/XMS/lib:/usr/lib/java/jre/lib/ext/x86:/usr/local/axis2c/lib:/usr/X11/lib:/opt/intel/Compiler/lib/ia32

Perl version is: perl, v5.8.8 built for i386-linux-thread-multi

  • Comment on Can't locate object method "require_version" via package "DBI" at /usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/DBD/DB2.pm line 27.

Replies are listed 'Best First'.
Re: Can't locate object method "require_version" via package "DBI" at /usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/DBD/DB2.pm line 27.
by ikegami (Patriarch) on Jan 25, 2011 at 04:00 UTC

    I suspect that upgrading Exporter will do the trick. The real problem is that DBD::DB2 makes assumptions about DBI's internals. It uses

    require_version DBI 1.41;

    instead of

    use DBI 1.41;

    or

    DBI->VERSION(1.41);

    You can change /usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/DBD/DB2.pm line 27 to either.

Re: Can't locate object method "require_version" via package "DBI" at /usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/DBD/DB2.pm line 27.
by roboticus (Chancellor) on Jan 24, 2011 at 23:48 UTC