2009-07-19 8 views
5

मैं जानना चाहता हूं कि आप/bin पर प्रोग्राम के लिए i386 और पीपीसी आर्किटेक्चर का समर्थन कैसे कर सकते हैं।प्रोग्राम एक ही समय में i386 और पीपीसी का समर्थन कैसे करते हैं?

मैं उदाहरण के लिए चलाने

bin $ file amber 

मैं

amber: setgid Mach-O universal binary with 2 architectures 
amber (for architecture i386): Mach-O executable i386 
amber (for architecture ppc): Mach-O executable ppc 

मिल कैसे कार्यक्रमों स्रोत कोड में i386 और पीपीसी समर्थन करते हैं?

दूसरे शब्दों में, जो घटकों आप निकाल सकते हैं, उदाहरण के लिए,/bin/एम्बर में यदि आप पीपीसी -architecture के समर्थन निकालना चाहते हैं?

+0

आपके उत्तरों के लिए धन्यवाद! –

उत्तर

10

इसे Universal binary कहा जाता है। संक्षेप में, निष्पादन योग्य दोनों प्रकार के निष्पादन योग्य कोड होते हैं। ऐप्पल का published document वर्णन करता है कि डेवलपर्स को या तो मंच पर चलाने के लिए अपने एप्लिकेशन कैसे बनाना चाहिए।

निष्पादन योग्य lipo फ़ाइल से निष्पादन योग्य संस्करण को हटाने के लिए उपयोग किया जा सकता है। यदि आप अपने एक्जिक्यूटिव को केवल एक संस्करण रखना चाहते हैं, तो आप इसे प्राप्त करने के लिए lipo का उपयोग कर सकते हैं।

ध्यान रखें कि ppc और i386 से अधिक है, हालांकि ये सार्वभौमिक बाइनरी चुनने के लिए "सुरक्षित" आर्किटेक्चर हैं। arch के लिए मैनपेज पढ़ें; वहां आप देख सकते हैं कि एक आधुनिक ओएसएक्स बाइनरी में ppc, ppc64, i386 या x86_64 शामिल होने की संभावना है। कई और सूचीबद्ध हैं, लेकिन वे पूर्णता के लिए वहां मौजूद हैं।

5

इसे fat binary कहा जाता है।

बाइनरी में दोनों आर्किटेक्चर के लिए मूल कोड की एक प्रति है। द्विआधारी प्रारूप और ऑपरेटिंग सिस्टम को इसका समर्थन करना है, इसलिए यह पता चल सकता है कि सही कोड के लिए फ़ाइल में कहां देखना है।

संबंधित मुद्दे