GNU/Linux >> Tutoriels Linux >  >> Linux

Linux – Exécuter des applications Mac Os X sous Linux ?

D'après cet article Wikipédia :

OS X est une série d'applications basées sur Unix systèmes d'exploitation à interface graphique développés et commercialisés par Apple Inc.

donc je pensais :

  • existe-t-il une application similaire à Wine mais qui exécute des applications Mac ?

  • est-ce possible à pour exécuter des applications Mac OS X sur un Linux machine ?

Réponse acceptée :

Darling (lien) est un projet qui vise à devenir analogue au vin. Actuellement, il n'exécute que certains programmes OSX en ligne de commande. À la mi-2019, il peut exécuter de nombreux programmes en ligne de commande et, selon leur page d'accueil, semble approcher du point où il peut également exécuter des logiciels graphiques rudimentaires. Il n'exécutera probablement pas encore ce que vous voulez, à moins qu'il ne soit basé sur du texte.

Tant que les développeurs du programme OS X ont publié leur code source et utilisé des bibliothèques multiplateformes (telles que QT, GTK, X11, GNUStep ou WxWidgets), vous devriez pouvoir recompiler un programme OS X pour Linux. OS X et Linux sont beaucoup plus compatibles au niveau de l'API qu'au niveau de l'ABI.

GNUStep implémente les API Cocoa de NeXTStep et OS X. C'était étonnamment complet quand je l'ai essayé, en termes de tout ce qu'il semblait capable de faire par rapport au peu qui semble l'utiliser dans la nature. GNUStep ne fonctionne qu'au niveau du code source (API), donc il fonctionne si un programme est open-source et utilise l'interface graphique Cocoa d'Apple (PAS "Aqua" qui est propriétaire). Cela dépend de votre capacité à compiler et à lier le code.

Considérez l'API, ou l'interface de programmation d'applications, comme quelque chose comme le tableau de bord d'une voiture :tout est visible pour le conducteur de la voiture, et vous pouvez monter dans la voiture de quelqu'un d'autre et trouver son tableau de bord différent tout aussi facile à comprendre.

Considérez l'ABI, ou Application Binary Interface, comme le moteur de la voiture ; il peut varier considérablement d'une marque et d'un modèle à l'autre, et vous ne pourrez probablement pas échanger très facilement votre moteur Chevy contre une Volvo.

Darling, dans cette analogie, mettrait le moteur Chevy dans le châssis d'une Volvo, et compiler à partir de la source reviendrait à sortir de votre Chevy et à entrer dans la Volvo. L'un est beaucoup plus simple à faire que l'autre du point de vue des programmeurs.

Mais Apple possède des bibliothèques d'interface utilisateur propriétaires que personne d'autre ne possède également. Si le développeur a utilisé l'un d'entre eux (comme Aqua), vous devrez attendre et espérer que Darling grandit comme Wine l'a fait, ou le porter vous-même. S'il n'y a pas de code source publié, ce serait comme si le moteur était si gros qu'il ne pouvait pas tenir dans le compartiment moteur de la Volvo, ou conçu pour être connecté à une voiture à traction avant où votre Volvo était à traction arrière. À moins que quelqu'un ne soit un maniaque absolument fou (de la meilleure façon possible) qui a des mois de temps libre et une quantité ridicule de dévouement, il est peu probable que cela se produise.

Connexe :Linux – Windows et Linux utilisant le même profil Firefox ?

De plus, GNUStep n'est pas complet à 100% en termes de couverture de l'API Cocoa, donc quelques chausse-pieds seront probablement encore nécessaires pour les programmes complexes. Et GNUStep ne fournit pas de système de construction équivalent à xcode - c'est-à-dire que si le développeur d'origine a utilisé exclusivement le système de "construction" de l'IDE XCode, vous risquez de devoir écrire des makefiles pour celui-ci. C'était la partie la plus frustrante pour moi, car même si j'ai de l'expérience avec la compilation et la liaison de logiciels, il est difficile de récupérer des informations utiles dans un format comme un .xcodeproj avec lequel je n'ai aucune expérience préalable.


Linux
  1. Exécuter une machine virtuelle Linux dans Podman

  2. Linux - Comment exécuter un chargeur de démarrage à partir de Linux ?

  3. Exécuter une application 32 bits sous Linux 64 bits ?

  4. Compilateur croisé pour Linux sur Mac OS X ?

  5. Exécutez la commande cd en tant que superutilisateur sous Linux

Comment exécuter des applications DOS sous Linux

Exécuter des fichiers binaires sous Linux

Le noyau Linux contre. Mac noyau

Comment exécuter des applications et des jeux Windows sur Linux à l'aide de Wine

Comment exécuter Windows 95 sous Linux

Comment changer l'adresse MAC sous Linux