Zgodnie z tym artykułem z Wikipedii :
OS X to seria systemów operacyjnych opartych na interfejsie graficznym Unix opracowanych i sprzedawanych przez Apple Inc.
więc myślałem:
czy jest jakaś aplikacja podobna do Wine, ale działa na komputerach Mac?
czy można uruchamiać aplikacje Mac OS X na komputerze z systemem Linux ?
linux
macintosh
application
0x0584
źródło
źródło
kvm
lubVirtualbox
). Niestety wystąpiłyby przy tym problemy licencyjne - Apple nie chce, abyś działał na ich systemach operacyjnych innych niż Apple. Nie sądzę, żeby nawet sprzedawali OS X na DVD (powinieneś dostać OS X z komputerem Mac i uaktualnić go przez Internet, kiedy ci to każą).Odpowiedzi:
Darling ( link ) to projekt, którego celem jest zbliżenie się do wina.
Obecnie jednak działa tylko niektóre programy OSX wiersza polecenia.Od połowy 2019 r. Może uruchamiać wiele programów wiersza polecenia i zgodnie z ich stroną główną wydaje się zbliżać do punktu, w którym może również uruchomić podstawowe oprogramowanie graficzne. Prawdopodobnie nie będzie jeszcze działał tak, jak chcesz, chyba że jest oparty na tekście.Tak długo, jak twórcy programu OS X opublikują swój kod źródłowy i użyją bibliotek międzyplatformowych (takich jak QT, GTK, X11, GNUStep lub WxWidgets), powinieneś być w stanie ponownie skompilować program OS X dla systemu Linux. OS X i Linux są znacznie bardziej kompatybilne na poziomie API niż na poziomie ABI.
GNUStep implementuje interfejsy API Cocoa NeXTStep i OS X. Był szokująco kompletny, kiedy go wypróbowałem, pod względem tego, jak wiele mogło to zrobić w porównaniu do tego, jak mało wydaje się używać go na wolności. GNUStep działa tylko na poziomie kodu źródłowego (API), więc działa, jeśli program jest open source i używa GUI Apple Cocoa (NIE „Aqua”, który jest zastrzeżony). To zależy od możliwości skompilowania i połączenia kodu.
Pomyśl o interfejsie API lub interfejsie programowania aplikacji jako o desce rozdzielczej samochodu - wszystko jest widoczne dla kierowcy samochodu, a możesz wsiąść do samochodu innej osoby i łatwo znaleźć jego inną deskę rozdzielczą.
Pomyśl o ABI, czyli Application Binary Interface, o silniku samochodu - może się znacznie różnić w zależności od marki i modelu i prawdopodobnie nie będziesz w stanie łatwo wymienić swojego silnika Chevy na Volvo.
Kochanie w tej analogii umieszczałby silnik Chevy w podwoziu Volvo, a kompilacja ze źródła byłaby jak wysiadanie z Chevy i wsiadanie do Volvo. Jedno jest o wiele prostsze do zrobienia niż drugie z perspektywy programisty.
Ale Apple ma zastrzeżone biblioteki interfejsów użytkownika, których nikt inny też nie ma. Jeśli programista użył jednego z nich (takiego jak Aqua), musisz poczekać i mieć nadzieję, że Darling dorośnie tak jak Wine, lub sam go przenieść. Jeśli nie opublikowano kodu źródłowego, wyglądałoby to tak, jakby silnik był tak duży, że nie zmieściłby się w komorze silnika Volvo lub został zaprojektowany do połączenia z samochodem z napędem na przednie koła, na którym Twoje Volvo było napędem na tylne koła. Chyba, że ktoś jest absolutnie szalonym maniakiem (w najlepszy możliwy sposób), który ma miesiące wolnego czasu i absurdalną ilość poświęcenia, prawdopodobnie się nie wydarzy.
Ponadto GNUStep nie jest w 100% kompletny pod względem zasięgu API Cocoa, więc pewna część obuwia będzie prawdopodobnie nadal konieczna w przypadku złożonych programów. A GNUStep nie zapewnia systemu kompilacji równoważnego z kodem x - to znaczy, jeśli pierwotny programista używał wyłącznie systemu „kompilacji” XCode IDE, możesz napisać dla niego pliki makefile. To była dla mnie najbardziej frustrująca część, ponieważ chociaż mam doświadczenie w kompilowaniu i łączeniu oprogramowania, ciężko jest wydobyć przydatne informacje z formatu takiego jak .xcodeproj, z którym nie miałem wcześniejszego doświadczenia.
źródło