PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

Warum schlägt die Installation von DBD::Pg in DynaLoader fehl?

Sie sollten unter Perl gehen, um diese dynamischen Verknüpfungsprobleme zu lösen. Verwenden Sie strace program &> out , und dann grep für libpq.so.5 . Meine Vermutung ist Ihre libpq.so.5 am falschen Ort ist oder Ihr DynaLoader ist falsch konfiguriert. Lesen Sie die Dokumentation unter @dl_library_path .

Hiermit können Sie sehen, was Ihr Suchpfad ist (der Strace zeigt auch, dass er versucht, die .so-Datei zu finden, indem er jedes Verzeichnis überprüft):

perl -MDynaLoader -le'print for @DynaLoader::dl_library_path;'

Stellen Sie sicher, dass Ihre libpq.5.so fällt in eine davon. Die strace zeigt auch an, ob der Kernel einen Fehler an DynaLoader zurückgibt, dass er tarnt; außerdem wird es Ihnen sicherlich alles sagen, was DynaLoader weiß.