मैंने देखा है कि --whole-archive
लिंकर विकल्प का एकमात्र वास्तविक उपयोग स्थिर लोगों से साझा पुस्तकालय बनाने में है। हाल ही में मैं मेकफ़ाइल (ओं) में आया जो घर स्थिर पुस्तकालयों में लिंक करते समय हमेशा इस विकल्प का उपयोग करता है। यह निश्चित रूप से निष्पादन योग्य वस्तुओं को अनावश्यक रूप से बिना संदर्भित ऑब्जेक्ट कोड में खींचने का कारण बनता है। मेरी प्रतिक्रिया यह थी कि यह सादा गलत है, क्या मुझे यहां कुछ याद आ रही है?एलडी लिंकर प्रश्न: - व्हाहोल-संग्रह विकल्प
दूसरा प्रश्न मुझे पूरे संग्रह विकल्प के बारे में पढ़ने के साथ कुछ करना है लेकिन काफी पार्स नहीं कर सका। इस प्रभाव के लिए कुछ --whole-archive
विकल्प का उपयोग स्थिर पुस्तकालय से लिंक करते समय किया जाना चाहिए यदि निष्पादन योग्य एक साझा लाइब्रेरी से भी लिंक करता है जो बदले में (उसी भाग में) स्थिर लाइब्रेरी के समान ऑब्जेक्ट कोड होता है। वह साझा लाइब्रेरी है और स्थैतिक पुस्तकालय ऑब्जेक्ट कोड के संदर्भ में ओवरलैप है। इस विकल्प का उपयोग निष्पादन योग्य में सभी प्रतीकों (उपयोग के बावजूद) को हल करने के लिए मजबूर करेगा। यह ऑब्जेक्ट कोड डुप्लिकेशन से बचने के लिए माना जाता है। यह भ्रमित है, अगर कार्यक्रम में एक प्रतीक को रेफरी किया जाता है तो इसे लिंक समय पर विशिष्ट रूप से हल किया जाना चाहिए, यह व्यवसाय नकल के बारे में क्या है? (मुझे माफ कर दो तो निम्न अनुच्छेद काफी स्पष्टता का प्रतीक नहीं है)
धन्यवाद
russion तो libhttp.a बनाया जा सकता है तो यह साबित होता है register_handler समारोह है कि libhttp.a में ही अस्तित्व में है। तो यह फ़ंक्शन main.cc में register_handler का संदर्भ कैसे दे सकता है? तो इस मामले में हमें आपके विचार को लागू करने के लिए किसी अन्य तरीके का उपयोग करना होगा। – longbkit