Bạn nên đi theo perl để giải quyết các vấn đề liên kết động này. Sử dụng strace program &> out
và sau đó grep cho libpq.so.5
. Tôi đoán là libpq.so.5
của bạn ở sai vị trí hoặc DynaLoader được định cấu hình sai. Đọc tài liệu trên @dl_library_path
.
Bạn có thể xem đường dẫn tìm kiếm của mình với cái này (đoạn mã cũng sẽ hiển thị nó đang cố gắng tìm .so bằng cách kiểm tra từng thư mục):
perl -MDynaLoader -le'print for @DynaLoader::dl_library_path;'
Đảm bảo rằng libpq.5.so
của bạn rơi vào một trong những. strace
cũng sẽ hiển thị nếu hạt nhân đang trả về lỗi cho DynaLoader rằng nó đang che giấu; hơn nữa, nó chắc chắn sẽ cho bạn biết mọi thứ mà DynaLoader biết.