मेरे पास कई .c फ़ाइलें और एक .a ऑब्जेक्ट फ़ाइल है। जीसीसी के साथ मुझे क्या कमांड का उपयोग एक एक्सई फाइल में संकलित करने के लिए करना चाहिए? अगर हम मेकफ़ाइल का उपयोग करते हैं, तो यह कैसा दिखता है?सी फाइलों को .a फ़ाइलों के साथ संकलित करने के लिए कमांड
उत्तर
.a फ़ाइल एक लाइब्रेरी है, जो पहले ही संकलित है। आप अपनी .c फ़ाइल को .o पर संकलित करते हैं, फिर आप निष्पादन योग्य बनाने के लिए .a के साथ अपने .o को लिंक करने के लिए लिंकर का उपयोग करते हैं। गैर तुच्छ परियोजनाओं के लिए
gcc -o maybe.exe useful.a something.c
Makefiles आमतौर पर पहली जीसीसी आह्वान एक ओ वस्तु के लिए प्रत्येक ग फ़ाइल संकलित करने के लिए:
सरल मामलों के लिए आप शायद ऐसा कर सकते हैं।
gcc -c something.c
तब वे लिंकर आह्वान एक आउटपुट निष्पादन में लिंक करने के लिए ओ और ए फ़ाइलों की एक सूची के साथ (इन दिनों अक्सर इसके लिए एक आवरण के रूप में जीसीसी का उपयोग)।
gcc -o maybe.exe useful.a something.o
भी ध्यान रखें कि सबसे स्थापित पुस्तकालयों के लिए, यह ठेठ स्पष्ट .a फ़ाइल निर्दिष्ट नहीं करने के लिए, लेकिन इसके बजाय -lhandy कहने के लिए जो कम होगा "के लिए कॉन्फ़िगर में कुछ libhandy.a बुलाया खोजने की कोशिश के लिए (या है -एल) खोज निर्देशिका "
ऑब्जेक्ट फ़ाइल पीढ़ी में त्रुटि को पकड़ने के लिए अज्ञात धन्यवाद –
*.a
एक स्थिर पुस्तकालय और गतिशील नहीं (विंडोज़ में *.dll
और लिनक्स में *.so
)
gcc -L<here comes the library path> -l<library name>
फ़ाइल के लिए उदाहरण के लिए
है के साथ निर्दिष्ट आप वर्तमान में libname.a है पथ का उपयोग करना चाहिए:
gcc *.c -L. -lname -o myprogram.o
man से
(शेल कमांड प्रॉम्प्ट में आदमी जीसीसी डाल)
आप विकल्प और अन्य तर्कों मिश्रण कर सकते हैं। अधिकांश भाग के लिए, आप ऑर्डर का उपयोग करते हैं, इससे कोई फर्क नहीं पड़ता। ऑर्डर तब मायने रखता है जब आप एक ही तरह के कई विकल्प का उपयोग करते हैं; उदाहरण के लिए, यदि आप एक से अधिक बार निर्दिष्ट करते हैं, तो निर्देशिका निर्दिष्ट क्रम में खोज की जाती है। साथ ही, -l विकल्प के प्लेसमेंट महत्वपूर्ण है।
बदल गया 'gcc -L <यहां लाइब्रेरी पथ> -l <लाइब्रेरी नाम> 'gcc -l से आता है <यहां लाइब्रेरी पथ> -l <लाइब्रेरी का नाम आता है > '। उम्मीद है कि आपका मतलब है –
यदि पुस्तकालय 'libname.a' है तो आप '-lname' का उपयोग क्यों करते हैं? – this
पढ़ें http://gcc.gnu.org/onlinedocs/gcc/Link-Options.html – 0x90
- 1. सी फाइलों को संकलित करने के लिए सी ++ का उपयोग कर सकते हैं?
- 2. कई एसएसएल फाइलों को निष्पादित करने के लिए MYSQL कमांड
- 3. केवल हेडर फ़ाइलों के साथ एक सी ++ .lib संकलित?
- 4. बैश कमांड केवल कुछ फाइलों को स्थानांतरित करने के लिए?
- 5. एकाधिक .c फ़ाइलों के साथ कर्नेल मॉड्यूल को संकलित करने के लिए मेकफ़ाइल को व्यवस्थित करने के लिए कैसे करें?
- 6. एसबीटी के साथ बस कुछ फाइलों को संकलित कैसे करें?
- 7. दो फ़ाइलों को कमांड के आउटपुट को रीडायरेक्ट करने के लिए कैसे करें
- 8. एकाधिक .cpp और .h फ़ाइलों को संकलित करने के लिए G ++ का उपयोग
- 9. क्या बीओएम स्रोत फाइलों के साथ यूटीएफ -8 संकलित करने के लिए जीसीसी प्राप्त करना संभव है?
- 10. एकाधिक ओकैम फाइलों को संकलित करना
- 11. बड़ी सीएसवी फाइलों के साथ काम करने के लिए प्रोग्राम
- 12. जावा फ़ाइल के साथ जार फ़ाइलों को कैसे शामिल करें और कमांड प्रॉम्प्ट में संकलित करें
- 13. सभी लिनक्स वितरण के लिए संकलित सी ++
- 14. मेकफ़ाइल का उपयोग करके विभिन्न सीएफएलजीएस के साथ विभिन्न सी फाइलों को कैसे संकलित करें?
- 15. perl कोड एकाधिक टेक्स्ट फ़ाइलों को विलय करने के लिए
- 16. OpenLayers.js कौन सी फाइलों का उपयोग करने के लिए?
- 17. स्वचालित रूप से सास फ़ाइलों को संकलित करने के लिए ग्रहण प्लगइन
- 18. सी # कक्षाएं फ़ाइलों को अनावृत करने के लिए?
- 19. मैं बदली-कॉन्ट्रिब-कॉफी के साथ गंदगी-संबंध का उपयोग कैसे कर सकता हूं केवल परिवर्तित करने के लिए। कॉफी फाइलों को संकलित करने के लिए?
- 20. फ़ाइलों को संपीड़ित करने के लिए
- 21. मेकफ़ाइल - एक बार में सभी सी फाइलों को संकलित करें
- 22. अस्थायी फ़ाइलों को बनाने के बिना सी में पढ़ने के लिए gzipped फ़ाइलों को खोलना
- 23. बैच फ़ाइलों के साथ कमांड प्रॉम्प्ट को दोहराएं
- 24. एकाधिक जावा फाइलों को संकलित करने के लिए जावा कंपाइलर एपीआई का उपयोग
- 25. सी ++ लाइब्रेरी एक्सेल (.xls) फ़ाइलों को लोड करने के लिए
- 26. कैसे क्यूटी के .ts फ़ाइलों को GNU gettext पुलिस फाइलों कन्वर्ट करने के लिए?
- 27. टेम्पलेट सदस्य समारोह के लिए कॉल को संकलित करने के
- 28. क्या विज़ुअल सी # 2010 एक्सप्रेस संस्करण के साथ प्रोजेक्ट कमांड लाइन को संकलित करना संभव है?
- 29. उपकरण को एक समामेलन बनाने/सी/सी ++ के लिए लाइब्रेरी की सभी स्रोत फ़ाइलों को गठबंधन करने के लिए टूल?
- 30. विजुअल स्टूडियो सी ++ मेनिफेस्ट फाइलों के साथ काम करना
* यह कैसे करें * के बारे में प्रश्न का उत्तर नहीं देता है। यह नहीं कहता "यह कैसा दिखता है"। – mtahmed