उबंटू पर ओएस एक्स कमांड लाइन प्रोग्राम चलाना


0

यह देखते हुए कि मैक ओएस एक्स बीएसडी (बर्कले सिस्टम डिस्ट्रीब्यूशन) यूनिक्स से प्राप्त होता है, मैं यह मानूंगा कि किसी तरह या किसी अन्य पर, उबंटू पर कमांड-लाइन ओएस एक्स प्रोग्राम चलाना संभव होगा। मैं वास्तव में उन संकलित कार्यक्रमों के बारे में बात कर रहा हूं जो किसी भी उपयोगकर्ता इंटरफ़ेस का उपयोग नहीं करते हैं सुविधाएँ (मेरे मामले में मुझे एक निष्पादन योग्य फ़ाइल रूपांतरण उपकरण चलाने की आवश्यकता है)। मैक ओएस एक्स मावेरिक्स पर चलने वाले विशेष उपकरण में मेरी दिलचस्पी है।

अगर किसी को इसे प्राप्त करने का एक तरीका पता है, शायद लिनक्स कर्नेल को पुनः स्थापित करके या उबंटू पर कुछ सिस्टम सॉफ़्टवेयर स्थापित करके, तो कृपया मुझे बताएं। मैं Ubuntu 12.04.2 LTS चला रहा हूं, लेकिन मैं भी कर सकता हूं यदि आवश्यक हो तो सिस्टम को अपग्रेड करें।


1
और "आप जिस विशेष उपकरण में रुचि रखते हैं, वह क्या है?"
slhck

निश्चित नहीं है कि इससे कोई फ़र्क पड़ता है, लेकिन मैं "InstallESDemontg.tool" (जिसे .dmg (Apple डिस्क इमेज)) फ़ाइल बूट करने योग्य बनाने के लिए एक टूल चलाने की कोशिश कर रहा हूँ। सिद्धांत रूप में, यह सिर्फ एक फाइल है। रूपांतरण उपकरण और इस प्रकार चलाने के लिए I / O के अलावा कुछ भी नहीं चाहिए। हालांकि, जब मैं उबंटू लिनक्स पर फ़ाइल चलाता हूं, तो मुझे निम्न त्रुटि संदेश मिलता है: "यह उपकरण केवल ओएस एक्स पर समर्थित है।" क्या कोई वर्कअराउंड हो सकता है?
John Sonderson

मैं आपको इसके बजाय यह विशिष्ट प्रश्न पूछने के लिए प्रोत्साहित करता हूं। जैसे, आप एक बनाना चाहते हैं .dmg लिनक्स से बूट करने योग्य फ़ाइल।
slhck

2
FWIW, InstallESDatalogg.tool केवल एक शेल स्क्रिप्ट है, जो कई कार्यक्रमों को आमंत्रित करता है जो OSX- विशिष्ट (hdiutil, pkgutil, PlistBuddy, chflags, और आशीर्वाद स्टैंड हो सकता है; लेकिन, वहाँ अन्य हो सकता है)। github.com/ntkme/InstallESD.dmg.tool/blob/master/...
Kent

जवाबों:


2

लिनक्स और ओएस एक्स दो पूरी तरह से अलग ऑपरेटिंग सिस्टम हैं, जैसे लिनक्स और बीएसडी, ओएस एक्स और विंडोज, विंडोज और सोलारिस, आदि। जब तक आपके पास उस टूल का सोर्स कोड नहीं होगा जिसका आप उपयोग करने की कोशिश कर रहे हैं, तो आप नहीं कर पाएंगे। बस इसे ओएस से ओएस पर कॉपी करें और काम करने की अपेक्षा करें। जबकि इसे चलाने के लिए "I / O द्वारा कुछ भी नहीं" की आवश्यकता हो सकती है (वास्तव में, नहीं सब कंप्यूटर प्रोग्राम सिर्फ "कुछ नहीं लेकिन I / O"?), यह एक निश्चित कंपाइलर द्वारा एक निश्चित टूलचिन के खिलाफ बनाया गया था, और कुछ कार्यों के साथ कुछ पुस्तकालयों की अपेक्षा करता है ताकि यह काम करने के लिए कुछ निश्चित स्थानों पर हो।

स्रोत के लिए देखें और लिनक्स पर फिर से इकट्ठा करने का प्रयास करें, या लिनक्स समकक्ष की तलाश करें।


धन्यवाद। ऐसा लगता है कि ऐसा करने का कोई आसान तरीका नहीं है।
John Sonderson

3

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

  1. पहले से ही पोर्ट किए गए एक को ढूंढें: उदाहरण के लिए मानक mailx कमांड कई बार लागू किया गया है। डेबियन और इसलिए Umbutu के कम से कम तीन संस्करण हैं।

  2. recompile / port: यदि आपके पास स्रोत कोड तक पहुँच है, तो यह सामान्य रूप से दूसरे प्लेटफ़ॉर्म पर recompile करने के लिए काफी स्ट्रेट फॉरवर्ड है, लेकिन कभी-कभी कुछ कैच भी होते हैं (आप जो भी मतलब चुनते हैं वह संशोधित / उसके मापदंडों को संशोधित नहीं करता है)।

  3. बाइनरी एमुलेशन: यह वह जगह है जहां आपके पास एक बाइनरी है जिसे एक ऑपरेटिंग सिस्टम के लिए संकलित किया गया था जो कि डायनेमिक लाइब्रेरी होने पर यह जटिल हो जाता है, और विशिष्ट और विस्तृत जानकारी की आवश्यकता होती है जैसे कि ldd क्या कहता है। आप शायद अपने विशिष्ट एमुलेटर के लिए मंचों पर भारी झुकाव करना चाहते हैं। अगर आप इस तरह से जाना चाहते हैं तो देखें http://darling.dolezel.info/en/Darling

  4. धोखा: फ़ाइल साझा और ssh। आपको दोनों कंप्यूटरों के लिए उपलब्ध फाइलों के लिए एक सामान्य स्थान की आवश्यकता है, nfs samba, ftp, आदि। फ़ाइल को कहीं ऐसी जगह रखें जहाँ मैक इसे पढ़ सके, लिनक्स से मैक में लॉग इन करने के लिए ssh का उपयोग करें, एक कमांड को चलाएं, संभवतः परिणामों को आगे बढ़ाएं, जारी रखें आपके दिन के साथ।

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