2009-02-20 5 views
1

J'essaie d'utiliser la base de données PostgreSQL pour stocker les informations de session Apache, mais je n'arrive pas à le faire fonctionner. Il échoue avec l'erreur suivante:Pourquoi mon programme DBI se plaint-il de 'Undefined subroutine & DBD :: Pg :: db :: _ login'?

Undefined subroutine &DBD::Pg::db::_login 

Il semble que les utilisateurs de MySQL se sont heurtés au même problème dans DBD :: MySQL :: db. J'ai la dernière version CPAN de DBI et DBD :: Pg. Il ne semble pas que la fonction _login soit présente dans le module. Des idées pour contourner ce problème? J'apprécie ton aide!

Merci

+0

Vous devez ajouter plus de détails, y compris le code. Une trace de pile (avec l'aide de Carp :: Always) serait également bonne. – jrockway

Répondre

2

Navigation à travers l'histoire, il n'a jamais été une méthode Perl nommé _login défini dans le package DBD::Pg::db (qui est défini dans Pg.pm), et l'invocation est explicitement DBD::Pg::db::_login().

Ceci est une supposition, mais je pense que _login est une fonction C qui est liée par XS, et c'est pourquoi vous ne pouvez pas trouver sa source dans le module. Cela indiquerait un problème avec la bibliothèque Postgres qu'elle essaie d'utiliser.

+0

Merci beaucoup de me pointer dans la bonne direction! La bibliothèque libpg.so (Postgres) ne se chargeait pas correctement était en fait le problème. Je ne savais pas ce qu'une fonction manquante signifiait. – user68965

Questions connexes