GNU/Linux >> Tutoriales Linux >  >> Linux

Linux:¿ejecutar aplicaciones de Mac Os X en Linux?

Según este artículo de Wikipedia:

OS X es una serie de basados ​​en Unix sistemas operativos de interfaz gráfica desarrollados y comercializados por Apple Inc.

así que estaba pensando:

  • ¿Hay alguna aplicación similar a Wine pero que ejecute aplicaciones Mac?

  • es posible at para ejecutar aplicaciones Mac OS X en un Linux máquina?

Respuesta aceptada:

Darling (enlace) es un proyecto que pretende volverse análogo al vino. Sin embargo, actualmente solo ejecuta algunos programas OSX de línea de comandos. A mediados de 2019, puede ejecutar muchos programas de línea de comandos y, según su página de inicio, parece estar llegando al punto en que también puede ejecutar un software gráfico rudimentario. Probablemente todavía no ejecute lo que desea, a menos que esté basado en texto.

Mientras los desarrolladores del programa OS X publicaron su código fuente y usaron bibliotecas multiplataforma (como QT, GTK, X11, GNUStep o WxWidgets), debería poder volver a compilar un programa OS X para Linux. OS X y Linux son mucho más compatibles a nivel de API que a nivel de ABI.

GNUStep implementa las API de Cocoa de NeXTStep y OS X. Fue sorprendentemente completo cuando lo probé, en términos de lo mucho que parecía capaz de hacer en comparación con lo poco que parece usarlo en la naturaleza. GNUStep solo funciona en el nivel de código fuente (API), por lo que funciona si un programa es de código abierto y utiliza la GUI Cocoa de Apple (NO "Aqua", que es propietario). Depende de poder compilar y vincular el código.

Piense en la API, o interfaz de programación de aplicaciones, como algo así como el tablero de un automóvil:el conductor del automóvil puede ver todo, y puede ingresar al automóvil de otra persona y encontrar su tablero diferente con la misma facilidad.

Piense en la ABI, o interfaz binaria de aplicaciones, como el motor del automóvil; puede variar mucho entre marcas y modelos, y probablemente no podrá cambiar su motor Chevy por un Volvo muy fácilmente.

En esta analogía, Darling estaría colocando el motor Chevy en el chasis de un Volvo, y compilar desde la fuente sería como simplemente salir de su Chevy y entrar en el Volvo. Uno es mucho más simple de hacer que el otro desde la perspectiva de los programadores.

Pero Apple tiene algunas bibliotecas de interfaz de usuario patentadas que nadie más tiene. Si el desarrollador usó uno de estos (como Aqua), tendrás que esperar y desear que Darling crezca como lo hizo Wine, o portarlo tú mismo. Si no se publica el código fuente, sería como si el motor fuera tan grande que no pudiera caber en el compartimiento del motor del Volvo, o diseñado para conectarse a un automóvil con tracción delantera donde su Volvo tenía tracción trasera. A menos que alguien sea un maníaco absolutamente loco (en el mejor sentido posible) que tenga meses de tiempo libre y una cantidad ridícula de dedicación, no es probable que suceda.

Relacionado:Linux – ¿Windows y Linux usando el mismo perfil de Firefox?

Además, GNUStep no está 100 % completo en términos de cobertura de las API de Cocoa, por lo que es probable que todavía sea necesario un poco de calzador para programas complejos. Y GNUStep no proporciona un sistema de compilación equivalente a xcode, es decir, si el desarrollador original usó el sistema de "compilación" del IDE de XCode exclusivamente, es posible que deba escribir archivos MAKE para él. Esta fue la parte más frustrante para mí, ya que si bien tengo experiencia compilando y vinculando software, es difícil sacar información útil de un formato como .xcodeproj con el que no tengo experiencia previa.


Linux
  1. Linux:¿cómo ejecutar un gestor de arranque desde Linux?

  2. ¿Es mejor un arranque dual o ejecutar una máquina virtual?

  3. Rendimiento de dd en Mac OS X frente a Linux

  4. Ejecute el comando cd como superusuario en Linux

  5. Android:¿es posible ejecutar aplicaciones de Android en Linux (normal)?

Cómo ejecutar aplicaciones DOS en Linux

Ejecutar archivos binarios en Linux

Núcleo de Linux vs. Núcleo de Mac

Cómo ejecutar aplicaciones y juegos de Windows en Linux usando Wine

Cómo ejecutar Windows 95 en Linux

Cómo cambiar la dirección MAC en Linux