इन गतिशील लिंकिंग समस्याओं को हल करने के लिए आपको पर्ल के अंतर्गत जाना चाहिए। strace program &> out
का उपयोग करें , और फिर libpq.so.5
. के लिए grep . मेरा अनुमान है आपका libpq.so.5
गलत स्थान पर है, या आपका DynaLoader गलत कॉन्फ़िगर किया गया है। @dl_library_path
. पर दस्तावेज़ पढ़ें .
आप देख सकते हैं कि इसके साथ आपका खोज पथ क्या है (स्ट्रेस इसे प्रत्येक निर्देशिका की जाँच करके .so को खोजने का प्रयास करते हुए भी दिखाएगा):
perl -MDynaLoader -le'print for @DynaLoader::dl_library_path;'
सुनिश्चित करें कि आपका libpq.5.so
उनमें से एक में पड़ता है। strace
यह भी दिखाएगा कि क्या कर्नेल डायनालोडर को एक त्रुटि लौटा रहा है कि यह क्लोकिंग है; इसके अलावा, यह निश्चित रूप से आपको वह सब कुछ बताएगा जो DynaLoader जानता है।