मेरे पास एक सी ++ लाइब्रेरी है जो बहुत बड़ा कोड उत्पन्न करती है जिसे मैं वास्तव में उम्मीद कर रहा हूं कि यह क्या कर रहा है। स्रोत की 50K से कम लाइनों से मुझे साझा ऑब्जेक्ट मिलते हैं जो लगभग 4 एमबी और स्थिर अभिलेखागार 9 को दबाते हैं। यह समस्याग्रस्त दोनों है क्योंकि लाइब्रेरी बाइनरी काफी बड़ी हैं, और इससे भी बदतर, इसके खिलाफ जुड़ी सरल एप्लिकेशन भी आम तौर पर 500 से 1000 प्राप्त करती हैं कोड आकार में केबी। लाइब्रेरी के साथ लाइब्रेरी को संकलित करना -ओएस कुछ हद तक मदद करता है, लेकिन वास्तव में बहुत ज्यादा नहीं।सी/सी ++ अनुप्रयोगों में अत्यधिक कोड आकार को प्रोफाइल करने के लिए कुछ तकनीक या उपकरण क्या हैं?
मैंने जीसीसी के -फ्रेपो कमांड के साथ भी प्रयोग किया है (भले ही मैंने देखा है कि सभी दस्तावेज बताते हैं कि लिनक्स संग्रह 2 पर डुप्लिकेट टेम्पलेट्स को मर्ज करेगा) और टेम्पलेट्स पर स्पष्ट टेम्पलेट इंस्टेंटेशन जो "संभावना" को बहुत अधिक डुप्लिकेट करने लग रहा था , लेकिन किसी भी मामले में कोई वास्तविक प्रभाव नहीं है। बेशक मैं "संभावना" कहता हूं क्योंकि, किसी भी प्रकार की प्रोफाइलिंग के साथ, इस तरह के अंधेरे अनुमान लगभग हमेशा गलत होते हैं।
क्या कोई ऐसा उपकरण है जो कोड आकार को आसान बनाता है, या किसी अन्य तरीके से मैं यह पता लगा सकता हूं कि इतना अधिक कमरे क्या ले रहा है, या अधिक आम तौर पर, मुझे किसी अन्य चीज की कोशिश करनी चाहिए? लिनक्स के तहत काम करने वाला कुछ आदर्श होगा लेकिन मैं जो भी प्राप्त कर सकता हूं वह ले जाऊंगा।
यह '-W1' नहीं है, यह' -Wl' –
@FX है - इसे ढूंढने के लिए धन्यवाद। मैंने इसे ठीक कर दिया है। –