यह कई पुस्तकालयों (बीच सूचीबद्ध -(
और -)
) के बीच परिपत्र निर्भरता को हल करने के लिए है ।
हवाला देते हुए कहा गया है कि जिस क्रम में पुस्तकालयों को जोड़ा जाता है वह कभी-कभी जीसीसी में त्रुटियों का कारण क्यों बनता है? या man ld
http://linux.die.net/man/1/ld
-(
अभिलेखागार -)
या --start-group
अभिलेखागार --end-group
अभिलेखागार संग्रह फ़ाइलों की एक सूची होना चाहिए। वे या तो स्पष्ट नाम, या -l विकल्प हो सकते हैं।
निर्दिष्ट अभिलेखों को बार-बार खोजा जाता है जब तक कि कोई नया अपरिभाषित संदर्भ नहीं बनाया जाता है। आम तौर पर, एक आर्काइव केवल एक बार उस क्रम में खोजा जाता है जिसे वह कमांड लाइन पर निर्दिष्ट करता है। यदि संग्रह में किसी ऑब्जेक्ट द्वारा संदर्भित अपरिभाषित प्रतीक को हल करने के लिए उस संग्रह में एक प्रतीक की आवश्यकता होती है, जो बाद में कमांड लाइन पर दिखाई देता है, तो लिंकर उस संदर्भ को हल करने में सक्षम नहीं होगा। अभिलेखों को समूहीकृत करके, जब तक सभी संभावित संदर्भों को हल नहीं किया जाता है, तब तक वे सभी बार-बार खोजे जाते हैं।
इस विकल्प का उपयोग करने के लिए एक महत्वपूर्ण प्रदर्शन लागत है। इसका उपयोग केवल तभी करना सबसे अच्छा है जब दो या अधिक अभिलेखों के बीच अपरिहार्य परिपत्र संदर्भ हों।
इसलिए, समूह के अंदर पुस्तकालयों को कई बार नए प्रतीकों के लिए खोजा जा सकता है, और आपको किसी भी तरह के बदसूरत निर्माण की आवश्यकता नहीं है -llib1 -llib2 -llib1
PS संग्रह का अर्थ है मूल रूप से एक स्थिर पुस्तकालय ( *.a
फाइलें)