यूनिक्स में .so और .a फ़ाइल कैसे बनाएं। क्या हमारे पास इसके लिए कोई मानक उपयोगिता है? -यूनिक्स में .so और .a बनाना
उत्तर
* .a एक rchive पुस्तकालय यह अपने स्रोतों संकलन बनाने के लिए:
gcc -c -o foo.o foo.c
gcc -c -o boo.o boo.c
ar -rsc yourlib.a foo.o boo.o
तो - स्थान स्वतंत्र कोड साझा लाइब्रेरी
gcc -fPIC -shared -soname,libfoo.so.1 -o libfoo.so.1.0 foo.c boo.c
#create shared library
gcc -Os -fPIC -c test.c
gcc -shared test.so test.o
#create static library
gcc -Os -c test.c
ar rcs test.a test.o
इस पर एक नजर डालें Makefile मैंने लिखा जब मैं सी के लिए नया था। यह स्पष्ट रूप से दिखाता है कि .a
औरको कैसे उत्पन्न और सही ढंग से लिंक करना हैsimple demo source से फ़ाइलें।
.a को एक स्थिर पुस्तकालय भी कहा जाता है, और .so को गतिशील रूप से लोड की गई लाइब्रेरी भी कहा जाता है।
मुझे Program Library HOWTO पसंद है।
प्रोग्रामर के लिए यह विधि चर्चा बनाने के लिए और उपयोग कार्यक्रम लिनक्स पर पुस्तकालयों। इसमें स्थैतिक पुस्तकालय, साझा पुस्तकालय, और गतिशील रूप से लोड किए गए पुस्तकालय शामिल हैं।
Yo Linux tutorial भी उपयोगी है।
इस ट्यूटोरियल पुस्तकालयों के पीछे के दर्शन और निर्माण और C/C++ पुस्तकालय की उपयोग "साझा घटकों" और "प्लग-इन" चर्चा करता है। विभिन्न तकनीकों और पद्धतियों उनके उपयुक्त एप्लिकेशन के लिए उपयोग और अंतर्दृष्टि पर भी चर्चा की गई है। इस ट्यूटोरियल में, सभी पुस्तकालय जीएनयू लिनक्स कंपाइलर का उपयोग करके बनाए गए हैं।
- 1. .a और .so फ़ाइलें क्या हैं?
- 2. साझा ऑब्जेक्ट्स (.so), स्थिर पुस्तकालय (.a), और डीएलएल (.so) के बीच अंतर?
- 3. .so और .a फ़ाइलों के बीच क्या अंतर है?
- 4. SO
- 5. यूनिक्स और mysql
- 6. यूनिक्स
- 7. लिनक्स में स्थिर पुस्तकालयों के लिए lib {library name} .a/.so नामकरण सम्मेलन है?
- 8. कोई उत्पाद बनाना एसडीके: मैं एसडीके के साथ मूल lib (.so) और एक जार कैसे जोड़ूं?
- 9. बिल्डिंग .so मॉड्यूल बिना autlaools/libtool के साथ .la और .a वेरिएंट स्थापित किए जा रहे हैं
- 10. बिल्डिंग कस्टम PHP एक्सटेंशन (.so)
- 11. डायनामिक lib (.so) और static libc.a
- 12. जावास्क्रिप्ट में, {a: 1} == {a: 1} एक त्रुटि क्यों देता है, और ({a: 1}) == {a: 1} काम करेगा?
- 13. यूनिक्स
- 14. बल्कि libbz2.so.1.0
- 15. libphp5.so लापता
- 16. संकलित बाइनरी (.so)
- 17. यूनिक्स और टी - आदेशों
- 18. यूनिक्स लाश और डेमन्स
- 19. .so खोज पथ
- 20. यूनिक्स और फ्रीबीएसडी
- 21. परिवर्तनीय चर के बीच अंतर var $ a = $() और var a?
- 22. यूनिक्स
- 23. एक .exe और a .dll
- 24. Emacs में डेटाबेस बनाना और बनाए रखना?
- 25. क्या int और a और int और a के बीच कोई अंतर है?
- 26. कृपया मुझे SO पृष्ठ स्रोत
- 27. यूनिक्स
- 28. यूनिक्स
- 29. यूनिक्स
- 30. यूनिक्स
किसी भी विचार .so फ़ाइल –
दूसरा (-fPIC) के बारे में, * .so पुस्तकालयों बनाता है आपका स्रोतों इस तरह से, कोई दूसरा रास्ता (मैं अन्य तरीकों से पता नहीं है) संकलित किया जाना चाहिए। – bua