लिनक्स पर मैक ओएस एक्स एप्लिकेशन चलाएं


13

इस विकिपीडिया लेख के अनुसार :

OS X यूनिक्स-आधारित ग्राफिकल इंटरफ़ेस ऑपरेटिंग सिस्टम की एक श्रृंखला है जो Apple Inc. द्वारा विकसित और विपणन किया गया है।

तो मैं सोच रहा था:

  • क्या वाइन के समान कोई अनुप्रयोग है लेकिन मैक अनुप्रयोग चलाता है?

  • क्या लिनक्स मशीन पर मैक ओएस एक्स एप्लिकेशन चलाना संभव है ?


2
इसका एक ही तरीका होगा कि आप OS X VM बना सकते हैं (उदाहरण का उपयोग कर kvmया Virtualbox)। दुर्भाग्य से, ऐसा करने के साथ लाइसेंस के मुद्दे होंगे - Apple नहीं चाहता कि आप अपने ओएस को गैर-Apple हार्डवेयर पर चलाएं। मुझे नहीं लगता कि वे डीवीडी पर भी ओएस एक्स बेचते हैं (आप अपने मैक के साथ ओएस एक्स प्राप्त करने वाले हैं और जब वे आपको बताते हैं तो इसे इंटरनेट पर अपग्रेड करते हैं)।
कास

धन्यवाद! क्या मैं वर्चुअल मशीन को स्थापित करने से पहले कॉन्फ़िगर करूं?
0x0584

जवाबों:


17

डार्लिंग ( लिंक ) एक परियोजना है जिसका उद्देश्य शराब के अनुरूप बनना है। वर्तमान में यह केवल कुछ कमांड लाइन OSX प्रोग्राम चलाता है। 2019 के मध्य तक, यह कई कमांड-लाइन प्रोग्राम चला सकता है, और उनके होमपेज के अनुसार यह उस बिंदु पर आ रहा है जहां यह कुछ अल्पविकसित ग्राफ़िकल सॉफ़्टवेयर भी चला सकता है। यह संभवत: वह नहीं चलेगा जो आप अभी तक चाहते हैं, जब तक कि यह पाठ-आधारित न हो।

जब तक ओएस एक्स प्रोग्राम के डेवलपर्स ने अपने स्रोत कोड जारी किए और क्रॉस-प्लेटफॉर्म लाइब्रेरी (जैसे कि क्यूटी, जीटीके, एक्स 11, GNUStep या WxWidgets) का उपयोग किया , तब तक आप लिनक्स के लिए ओएस एक्स प्रोग्राम को फिर से संकलित करने में सक्षम होना चाहिए। ओएस एक्स और लिनक्स एबीआई स्तर की तुलना में एपीआई स्तर पर बहुत अधिक संगत हैं।

GNUStep , NeXTStep और OS X के कोको एपीआई को लागू करता है। जब मैंने इसे आज़माया, तो यह देखने में कितना सक्षम लग रहा था, यह इस बात से अधिक है कि यह जंगली में इसका उपयोग करने में कितना कम लगता है। GNUStep केवल स्रोत-कोड (API) स्तर पर काम करता है, इसलिए यह काम करता है यदि कोई प्रोग्राम खुला-स्रोत है और Apple के कोको GUI का उपयोग करता है (न कि "एक्वा" जो कि मालिकाना है)। यह कोड को संकलित करने और लिंक करने में सक्षम होने पर निर्भर करता है।

एपीआई के बारे में सोचें, या एप्लिकेशन प्रोग्रामिंग इंटरफ़ेस, कार के डैशबोर्ड की तरह कुछ - सब कुछ कार के चालक को दिखाई देता है, और आप किसी और की कार में उतर सकते हैं और अपने अलग डैशबोर्ड का पता लगा सकते हैं।

कार के इंजन के रूप में एबीआई, या एप्लिकेशन बाइनरी इंटरफेस के बारे में सोचें - यह मेक और मॉडल के बीच बहुत भिन्न हो सकता है, और आप शायद अपने चेवी इंजन को वोल्वो में बहुत आसानी से व्यापार करने में सक्षम नहीं होंगे।

डार्लिंग इस सादृश्य में चेवी इंजन को एक वोल्वो के चेसिस में डाल देगा, और स्रोत से संकलन करना आपके चेवी से बाहर निकलने और वॉल्वो में उतरने जैसा होगा। एक प्रोग्रामर के दृष्टिकोण से दूसरे की तुलना में बहुत सरल है।

लेकिन Apple के पास कुछ मालिकाना उपयोगकर्ता इंटरफ़ेस लाइब्रेरी हैं जो किसी और के पास भी नहीं हैं। यदि डेवलपर इनमें से किसी एक (जैसे एक्वा) का उपयोग करता है, तो आपको इंतजार करना होगा और आशा करनी होगी कि डार्लिंग वाइन की तरह बढ़ता है, या खुद को पोर्ट करता है। यदि कोई स्रोत कोड जारी नहीं किया गया है, तो यह ऐसा होगा जैसे कि इंजन इतना बड़ा बनाया गया था कि वह वोल्वो के इंजन बे में फिट नहीं हो सकता था, या फ्रंट व्हील ड्राइव कार से कनेक्ट करने के लिए डिज़ाइन किया गया था जहां आपका वोल्वो रियर व्हील ड्राइव था। जब तक कोई व्यक्ति बिल्कुल पागल पागल (सर्वोत्तम संभव तरीके से) नहीं है जिसके पास खाली समय और समर्पण की हास्यास्पद मात्रा है, ऐसा होने की संभावना नहीं है।

इसके अतिरिक्त, कोको एपीआई के कवरेज के संदर्भ में GNUStep 100% पूर्ण नहीं है, इसलिए कुछ शूहर्बिंग की संभावना अभी भी जटिल कार्यक्रमों के लिए आवश्यक है। और GNUStep एक एक्सकोड-समतुल्य बिल्ड सिस्टम प्रदान नहीं करता है - अर्थात, यदि मूल डेवलपर XCode IDE के "बिल्ड" सिस्टम का विशेष रूप से उपयोग करता है, तो आपको इसके लिए मेकफाइल्स लिखना छोड़ दिया जा सकता है। यह मेरे लिए सबसे निराशाजनक हिस्सा था, क्योंकि मेरे पास सॉफ्टवेयर को संकलित करने और जोड़ने के साथ अनुभव है, यह एक .xcodeproj जैसे प्रारूप से उपयोगी जानकारी को कुश्ती करना मुश्किल है, जिसके साथ मेरे पास कोई पूर्व बैकेंड अनुभव नहीं है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.