-rdynamic
(या --export-dynamic
लिंकर स्तर पर वास्तव में क्या करता है) -fvisibility*
ध्वज या दृश्यता pragma
एस और __attribute__
एस द्वारा परिभाषित अनुसार यह प्रतीक दृश्यता से कैसे संबंधित है?'गतिशील' क्या करता है और वास्तव में इसकी आवश्यकता होती है?
--export-dynamic
के लिए, ld(1) का उल्लेख है:
... आप एक गतिशील वस्तु जो प्रतीकों कार्यक्रम द्वारा परिभाषित करने के लिए वापस उल्लेख करने की जरूरत है लोड करने के लिए उपयोग करें "dlopen", बल्कि कुछ अन्य गतिशील से हैं ऑब्जेक्ट, तो प्रोग्राम को लिंक करते समय आपको इस विकल्प का उपयोग करने के लिए शायद की आवश्यकता होगी। ...
मुझे यकीन नहीं है कि मैं इसे पूरी तरह से समझता हूं। क्या आप कृपया एक उदाहरण प्रदान कर सकते हैं जो -rdynamic
के बिना काम नहीं करता है लेकिन इसके साथ करता है?
संपादित: मैं वास्तव में डमी पुस्तकालयों के एक जोड़े के संकलन की कोशिश की (एकल फाइल, बहु फ़ाइल, विभिन्न -O स्तर, कुछ अंतर-समारोह कॉल, कुछ छिपा प्रतीकों, कुछ दृश्य), के साथ और -rdynamic
बिना, और अब तक मुझे बाइट-समान आउटपुट प्राप्त हो रहा है (जब सभी अन्य झंडे निरंतर रहते हैं), जो काफी परेशान है।
आप उदाहरण यह पूरी तरह स्पष्ट करते हैं कि मैनपेज का क्या अर्थ है। आपका बहुत बहुत धन्यवाद! – PSkocik