मैं ohNet नामक ढांचे का उपयोग करके एक एप्लिकेशन बना रहा हूं। ढांचे के निर्माण के बाद, make install
के माध्यम से ढांचे को स्थापित करने की संभावना है। डिफ़ॉल्ट रूप से पुस्तकालय /usr/local/[lib|include]
फ़ोल्डरों के अंदर स्थापित होते हैं। ठीक।/usr/local/lib में पुस्तकालय नहीं मिला
मैं विकास के लिए ग्रहण का उपयोग कर रहा हूं। इस पुस्तकालयों का उपयोग करने के लिए मुझे पुस्तकालय में पथ शामिल करना होगा (इस मामले में usr/local/include/ohNet
), लिंकर खोज पथ (-एल) (/usr/local/lib/ohNet
) और विशिष्ट पुस्तकालय (-एल) सेट करें (इस मामले में मैं एक लाइब्रेरी चुनता हूं libohNet.so
कहा जाता है जो इस फोल्डर में है जब मैं परियोजना ग्रहण में यह ठीक काम करता है का निर्माण, फिर भी अगर मैं programm मैं निम्न संदेश के साथ सामना कर रहा हूँ चलाने का प्रयास:।
error while loading shared libraries: libohNet.so: cannot open shared object file: No such file or directory
मैं डबल जाँच लिया है यह, और फ़ाइल libohNet.so
इस निर्देशिका में है! इस फ़ाइल को नहीं मिला है?
मैं गूगल पर खोज की है और पाया कुछ पदों करते हुए कहा कि यह समस्याग्रस्त है कि पुस्तकालयों /usr/lib
see here के बजाय /usr/local/lib
में स्थापित हो रहे हैं ... मैं eclipse
में कुछ अतिरिक्त सेटिंग कॉन्फ़िगर करने ld
इस पथ में पुस्तकालयों को पहचानते हैं है? इसके लिए समाधान क्या है?
अपनी लिंकर लाइन में '-L/usr/local/lib' जोड़ें। –
मैंने पहले ही लिंकर सर्चपाथ को '/ usr/local/lib/ohNet' – Moonlit
पर सेट कर दिया है, फिर आपको यह जांचना होगा कि आप वास्तव में फ़ाइल को पढ़ सकते हैं, और यह सही प्रकार की .so फ़ाइल है - उदाहरण के लिए, 32 मिश्रण और 64 बिट? –