Вы должны пойти под Perl, чтобы решить эти проблемы динамического связывания. Используйте strace program &> out
, а затем grep для libpq.so.5
. Я предполагаю, что ваш libpq.so.5
находится не в том месте, или ваш DynaLoader неправильно настроен. Прочитайте документы на @dl_library_path
.
Вы можете увидеть, каков ваш путь поиска с этим (strace также покажет, что он пытается найти .so, проверяя каждый каталог):
perl -MDynaLoader -le'print for @DynaLoader::dl_library_path;'
Убедитесь, что ваш libpq.5.so
попадает в одну из них. strace
также покажет, возвращает ли ядро ошибку DynaLoader, что оно скрывается; более того, он обязательно расскажет вам все, что знает DynaLoader.