เรียกใช้แอปพลิเคชัน Mac OS X บน Linux


13

ตามบทความ Wikipedia นี้ :

OS X เป็นชุดของระบบปฏิบัติการส่วนต่อประสานกราฟิกที่ใช้ Unix ซึ่งพัฒนาและทำการตลาดโดย Apple Inc.

ดังนั้นฉันจึงคิดว่า:

  • มีแอปพลิเคชันที่คล้ายกันกับWineแต่ใช้งานแอปพลิเคชัน Mac หรือไม่

  • เป็นไปได้ไหมที่จะใช้งานแอพพลิเคชั่น Mac OS X บนเครื่องLinux ?


2
วิธีเดียวที่จะสร้าง OS X VM (เช่นใช้kvmหรือVirtualbox) น่าเสียดายที่มีปัญหาเกี่ยวกับสิทธิ์ใช้งานในการทำเช่นนั้น - Apple ไม่ต้องการให้คุณใช้งานระบบปฏิบัติการบนฮาร์ดแวร์ที่ไม่ใช่ของ Apple ฉันไม่คิดว่าพวกเขาจะขาย OS X บน DVD อีกต่อไป (คุณควรจะได้รับ OS X ด้วย Mac ของคุณและอัปเกรดผ่านทางอินเทอร์เน็ตเมื่อพวกเขาบอกคุณ)
cas

ขอบคุณ! ฉันจะกำหนดค่าเครื่องเสมือนก่อนติดตั้งหรือไม่
0x0584

คำตอบ:


17

ดาร์ลิ่ง ( ลิงค์ ) เป็นโครงการที่มีเป้าหมายที่จะคล้ายคลึงกับไวน์ ในปัจจุบันมันรันเฉพาะบางโปรแกรม OSX บรรทัดคำสั่งเท่านั้น ตั้งแต่กลางปี ​​2019 มันสามารถรันโปรแกรมบรรทัดคำสั่งจำนวนมากและตามหน้าแรกของพวกเขาดูเหมือนจะเข้าใกล้จุดที่สามารถเรียกใช้ซอฟต์แวร์กราฟิกพื้นฐานบางอย่างได้เช่นกัน มันอาจจะไม่ทำงานในสิ่งที่คุณต้องการเพียงอย่างเดียวเว้นแต่ว่าจะใช้ข้อความเป็นหลัก

ตราบใดที่นักพัฒนาของโปรแกรม OS X ได้ปล่อยซอร์สโค้ดและใช้ไลบรารีข้ามแพลตฟอร์ม (เช่น QT, GTK, X11, GNUStepหรือ WxWidgets) คุณควรรวบรวมโปรแกรม OS X อีกครั้งสำหรับ linux OS X และ Linux เข้ากันได้ดีกว่าในระดับ API มากกว่าระดับ ABI

GNUStepใช้ Cocoa APIs ของ NeXTStep และ OS X มันเสร็จสมบูรณ์อย่างน่าประหลาดใจเมื่อฉันลองใช้ในแง่ของความสามารถในการทำกับความลำบากในการใช้งานเท่าไหร่ GNUStep ใช้งานได้เฉพาะในระดับซอร์สโค้ด (API) ดังนั้นจึงสามารถใช้งานได้หากโปรแกรมเป็นโอเพ่นซอร์สและใช้ Cocoa GUI ของ Apple (ไม่ใช่ "Aqua" ซึ่งเป็นกรรมสิทธิ์) มันขึ้นอยู่กับความสามารถในการรวบรวมและเชื่อมโยงรหัส

คิดว่า API หรือ Application Programming Interface เป็นเหมือนแดชบอร์ดของรถ - ทุกอย่างปรากฏแก่ผู้ขับขี่รถและคุณสามารถเข้าไปในรถของคนอื่นและค้นหาแดชบอร์ดที่แตกต่างของเขาได้ง่าย

คิดว่า ABI หรือ Application Binary Interface เป็นเครื่องยนต์ของรถ - มันสามารถแตกต่างกันมากระหว่างยี่ห้อและรุ่นและคุณอาจไม่สามารถแลกเปลี่ยนเครื่องยนต์ Chevy ของคุณเป็นวอลโว่ได้อย่างง่ายดาย

ที่รักในความคล้ายคลึงนี้จะนำเครื่องยนต์ Chevy มาไว้ในแชสซีของวอลโว่และการรวบรวมจากแหล่งข้อมูลจะเหมือนกับการออกจาก Chevy ของคุณและเข้าสู่วอลโว่ หนึ่งง่ายกว่าที่จะทำจากมุมมองของโปรแกรมเมอร์

แต่ Apple มีห้องสมุดส่วนต่อประสานผู้ใช้ที่เป็นกรรมสิทธิ์ซึ่งไม่มีใครมีเช่นกัน หากผู้พัฒนาใช้หนึ่งในเหล่านี้ (เช่น Aqua) คุณจะต้องรอและหวังว่าดาร์ลิ่งจะเติบโตขึ้นอย่างที่ไวน์ทำหรือพอร์ตด้วยตัวคุณเอง หากไม่มีซอร์สโค้ดปล่อยมันจะเหมือนกับว่าเครื่องยนต์มีขนาดใหญ่จนไม่สามารถใส่ในช่องเครื่องยนต์ของวอลโว่หรือออกแบบมาเพื่อเชื่อมต่อกับรถขับเคลื่อนล้อหน้าซึ่งเป็นที่ซึ่งวอลโว่ของคุณขับเคลื่อนล้อหลัง (ในวิธีที่ดีที่สุดที่เป็นไปได้) ซึ่งมีเวลาว่างหลายเดือนและการอุทิศตนอย่างไร้สาระจำนวนมากมันก็ไม่น่าจะเกิดขึ้นได้

นอกจากนี้ GNUStep ยังไม่เสร็จสมบูรณ์ 100% ในแง่ของการครอบคลุมของ Cocoa API ดังนั้นการใส่รองเท้าบางครั้งยังคงมีความจำเป็นสำหรับโปรแกรมที่ซับซ้อน และ GNUStep ไม่ได้จัดเตรียมระบบสร้าง xcode เทียบเท่านั่นคือถ้านักพัฒนาดั้งเดิมใช้ระบบ "build" ของ XCode IDE คุณอาจต้องเขียน makefiles สำหรับมัน นี่เป็นส่วนที่น่าผิดหวังที่สุดสำหรับฉันเนื่องจากในขณะที่ฉันมีประสบการณ์เกี่ยวกับการรวบรวมและเชื่อมโยงซอฟต์แวร์มันยากที่จะต่อสู้ข้อมูลที่เป็นประโยชน์ออกมาในรูปแบบเช่น. xcodeproj ที่ฉันไม่มีประสบการณ์แบ็กเอนด์มาก่อนด้วย

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.