चलो कहते हैं कि मैं एक बहुत ही सरल सी फ़ाइल (बुलाया foo.c) करते हैं उदाहरण), डिफ़ॉल्ट रूप से कौन से पुस्तकालय जुड़े हुए हैं और वे कहां स्थित हैं? (मैक ओएस एक्स 10.7 पर)जीसीसी द्वारा जुड़े डिफ़ॉल्ट पुस्तकालय?</p> <pre><code>int main() { printf("foo"); return 0; } </code></pre> <p>अब मैं जीसीसी फोन:</p> <pre><code>gcc foo.c </code></pre> <p>जब मैं (जीसीसी फोन नहीं विकल्पों के साथ ऊपर के रूप
उत्तर
gcc
को -v
विकल्प यह डिफ़ॉल्ट विकल्प यह पुस्तकालय रास्तों और डिफ़ॉल्ट पुस्तकालयों का उपयोग करें और फ़ाइलों कि में लिंक कर दिया जाएगा आपत्ति जाएगा के बारे में जानकारी डंप करने के लिए कारण होगा में स्थित हैं।
यदि आप -Wl,--verbose
विकल्प देते हैं, तो gcc --verbose
को लिंकर पर पास कर देगा जो कि असफल और सफल दोनों खोजों सहित पुस्तकालयों की तलाश में ठीक से डंप करेगा।
दोनों विकल्पों कम्बाइन, और आप देखेंगे कि वास्तव में क्या पुस्तकालयों में जुड़े हुए हैं, और क्यों वे में जोड़ा जा रहा है कर रहे हैं।
gcc -v foo.c -Wl,--verbose
ldd binary_name। http://www.opennet.ru/man.shtml?topic=ldd&category=1&russian=2
यह केवल गतिशील पुस्तकालयों दिखाएगा। –
नोट उन्होंने मैक ओएस एक्स 10.7 कहा, जहां कोई 'ldd' नहीं है। समकक्ष 'otool -L' है। इसके लिए –
मानक पुस्तकालय डिफ़ॉल्ट रूप से जुड़े होते हैं। वे/usr में लिनक्स मशीनों
'पथ' का उपयोग नहीं किया जाता है। – zwol
- 1. <% $, <% @, <% =, <% # ... सौदा क्या है?
- 2. 'ऑपरेटर <<' के लिए 'std :: cout <<' में अस्पष्ट अधिभार <<
- 3. मैं अदालत << MyClass
- 4. >>>>,> |, ||, | <, <, <<
- 5. PHP व्यंजक <<< EOB
- 6. ईजेएस: <% = बनाम <% -
- 7. पीएचपी: <<< ob_start बनाम
- 8. << ऑपरेटर और प्रत्यावर्तन
- 9. अंतर << a_value
- 10. PHP क्या <<< मतलब है?
- 11. cout << स्ट्रिंगस्ट्रीम
- 12. प्रश्न <<
- 13. <? के बजाय php <?
- 14. ऑपरेटर के साथ पूर्णांक पदोन्नति <<
- 15. ओवरलोडिंग ऑपरेटर << - सी ++
- 16. Enumerable.ToList <>() <>
- 17. DOMDocument को <as & lt
- 18. जोड़ी <int, int> और कस्टम ऑपरेटर के साथ BOOST_CHECK_EQUAL <<
- 19. ऑपरेटर << ओवरलोडिंग ओस्ट्रीम
- 20. कैसे बचें << - असाइन
- 21. <<..>> = आउटपुट
- 22. ओवरलोडिंग ऑपरेटर << सरणियों के लिए
- 23. कैसे मैं अदालत शैली इंटरफेस के साथ एक लकड़हारा वर्ग लिख सकता हूँ (लकड़हारा << "त्रुटि:" << वैल << endl;)
- 24. <%# %> बनाम <%= %>
- 25. कॉलिंग ऑपरेटर << gdb
- 26. अधिभार ऑपरेटर << सरणी के लिए
- 27. का अर्थ << = और | =
- 28. ऑपरेटर बनाना << आभासी?
- 29. <%! %> और <% %>
- 30. एएसपी.Net में, <% = और <% #
मेरे मैक पर, एलडी का कहना है कि --verbose एक अपरिचित विकल्प – user1516425
@ user1516425 है: ओह - जब मैं 'gcc' देखता हूं, तो मुझे लगता है कि जीएनयू' ld' शामिल है। एक्सकोड लिंकर के लिए कुछ दस्तावेज़ देख रहे हैं, https://developer.apple.com/library/mac/#documentation/Darwin/Reference/Manpages/man1/ld.1.html, आप देखना चाहते हैं कि '-t 'लिंकर विकल्प चाल करेगा। विचार करने के लिए कुछ अन्य विकल्प उस पृष्ठ पर शीर्षक "लिंकर का आत्मनिरीक्षण करने के विकल्प" के अंतर्गत पाए जा सकते हैं। –