2011-11-19 20 views
5

क्या प्रोग्राम की खोज करने का कोई तरीका है साझा साइटों के लिए dlopen() द्वारा कौन से पथ खोजे जाते हैं? मैंने हमेशा सोचा था कि dlopen() केवल/lib और/usr/lib में देखेगा लेकिन अब मैंने देखा है कि लिनक्स मिंट पर libglib-2.0.so जैसे कई मूल घटक एक पूरी तरह से अलग फ़ोल्डरों में हैं, अर्थात्/rofs/lib/i386-gnu-linux और कुछ अन्य। क्या इन सभी पथों को जानने का कोई तरीका है जो dlopen() किसी साझा ऑब्जेक्ट के लिए खोज करेंगे? मैंने पहले ही पर्यावरण परिवर्तनीय LD_LIBRARY_PATH की जांच की है लेकिन यह बिल्कुल परिभाषित नहीं है।dlopen() खोज पथ

उत्तर

7

ldconfig आदमी पेज को देखें, और फ़ाइल: /etc/ld.so.conf

2

ld.so.conf संकेत के अलावा:

आप सुनिश्चित करने के लिए एक विशिष्ट पुस्तकालय dlopen एड, dlopen के पथ से पारित है कि चाहते हैं उदाहरण के लिए dlopen("/some/path/to/lib.so", RTLD_LOCAL) या शायद dlopen("./lib.so", RTLD_LOCAL) लेकिन dlopen("lib.so", RTLD_LOCAL)

संबंधित मुद्दे