2010-03-09 14 views

Respuesta

274

La cadena de herramientas de bajo nivel para Xcode (la familia del compilador gcc, el depurador gdb, etc.) es todo de código abierto y común para las plataformas Unix y Linux. Pero el IDE - el editor, gestión de proyectos, indexación, navegación, sistema de compilación, depurador gráfico, modelado de datos visuales, sistema SCM, refactorización, instantáneas de proyectos, etc. - es una aplicación Mac OS X Cocoa, y no es portátil.

+39

+1 excelente breve descripción de lo que es común y lo que es maccéntrico – curtisk

+7

Sin mencionar que ejecutarlo en otro sistema operativo probablemente rompa su EULA. Apple es particularmente mezquino cuando se trata de acuerdos de licencia. – jpaugh

+1

Esto no es 100% correcto (o actualizado). Standard GCC no puede producir archivos de objeto Mach-O, pero Clang puede. Pero aún necesitas el ld de Apple para vincular el binario final. Darling puede ejecutar la cadena de herramientas Xcode original en Linux (pero no Xcode IDE). – LubosD

2

OSX es based on BSD, no Linux. No puede ejecutar Xcode en una máquina Linux.

+14

puedo ejecutar Xcode en otra BSD? –

4

Creo que necesitas MonoTouch (¡no gratis!) Para ese complemento.

Y no, no hay forma de ejecutar Xcode en Linux.

Disculpe las malas noticias. :)

2

No, has oído hablar de MonoTouch que es un entorno .NET/mono para el desarrollo de iPhone. Pero aún necesitas una Mac y el SDK oficial de iPhone. Y el emulador es la manzana oficial de uno, esto actúa como un IDE independiente y le permite no tiene que código en Objective C, más bien que el código en C#

Es un proyecto interesante para decir lo menos ....

EDITAR: al parecer, puede distribuir en la tienda de aplicaciones ahora, al principio era un no va ...

7

Si ejecuta VMware Player o Workstation (o tal vez VirtualBox, no estoy seguro si es compatible con Mac OS X, pero puede), y luego Mac OS X Server (el cliente no puede virtualizarse legalmente). Por supuesto, en este caso está ejecutando XCode en OS X, pero su máquina host podría ser linux.

+2

Es posible ejecutar OS X dentro de VirtualBox. Corro 10.8 Mountain Lion de esta manera. Debes seguir un howto. Funciona casi sin problemas. Soy danés, así que tuve que construir mi propio diseño de teclado. –

+2

Incluso el servidor solo se puede virtualizar (legalmente) solo en el hardware de Apple; Sin embargo, creo que sería legal ejecutar Linux en hardware de Apple y luego Mac OS X como invitado (aunque no estoy seguro de que esta sea una opción atractiva). @KristianSpangsege: me alegra saber que funciona bajo tu nombre en VirtualBox ... Instalé alrededor de 5 versiones diferentes y todas fueron muy lentas. Pensé que era un problema con todos los MacOSX virtualizados hasta que cambié a VMware ... casi no hay problemas allí (aún se produce una desaceleración breve). – johndodo

13

Realmente quería comentar, no responder. Pero para ser precisos, OSX no está basado en BSD, es una evolución de NeXTStep. El sistema operativo NeXTStep utiliza el kernel Mach desarrollado por CMU. Originalmente fue diseñado como un MicroKernel, pero debido a restricciones de rendimiento, finalmente decidieron que necesitaban incluir la porción de Unix de la API en el kernel mismo y, por lo tanto, un "servidor" compatible con BSD (originalmente destinado a procesar solicitudes para BSD-compatible mensajes del núcleo) se movió al kernel, por lo que es un kernel monolítico. Puede ser compatible con BSD en la API de programación, pero NO es BSD.

El resto del sistema operativo involucró a ObjectiveC (en arreglos entre Stepstone y Richard Stallman de GNU/GCC) con una GUI basada en una tecnología llamada "Display Postscript" ... algo así como un servidor X, pero con comandos PostScript . OS X cambió Display Postscript para mostrar PDF y aumentó los requisitos generales de hardware 1000 veces (NeXT podría correr en 8-16MB, ahora usted necesita GB).

Debido al matrimonio cercano de GCC y Objective C y NeXT, su mejor apuesta al ejecutar XCode de forma nativa en Linux sería hacer un puerto (si puede obtener la fuente - buena suerte) utilizando las bibliotecas GNUStep. Originalmente diseñado para compatibilidad con NextStep y OpenStep, he oído que ahora son más o menos compatibles con Cocoa, pero no he jugado con nada en casi 2 décadas. Por supuesto, eso solo te lleva a ObjC, no a Swift, y no sé si Apple va a OpenSource.

0

Creo que esto es lo que estás buscando

Apple lanzó veloz para reemplazar Xcode para desarrolladores de Linux ios

http://www.cnet.com/news/apple-introduces-swift-2/

+3

Lanzaron rápido no Xcode. – Antzi

+0

Todavía no es bueno. Es solo que el lenguaje es de código abierto y publicado en Linux junto con una biblioteca estándar. No está destinado a hacer aplicaciones de iOS o reemplazar Xcode. Más como para hacer aplicaciones de Linux con rapidez. Por supuesto, esto simplificaría el trabajo de las personas que desean hacer un compilador cruzado. – Antzi

13

Nadie sugirió Vagrant todavía, así que aquí está, Vagrant box for OSX

vagrant init http://files.dryga.com/boxes/osx-yosemite-0.2.1.box 
vagrant up 

y usted tiene una máquina virtual MACOS. Pero de acuerdo con EULA de Apple, todavía necesita ejecutarlo en hardware MacOS: D Pero en cualquier lugar, aquí hay uno para todos los geeks que blanquearon MacOS e instalaron Ubuntu: D

Desafortunadamente, no puede ejecutar los editores desde adentro usando la opción SSH X-forwarding.

0

Si desea utilizar XCode en otro sistema operativo, sugiero cloud computing. De esa forma, su aplicación se está desarrollando en una Mac y puede enviarse a la App Store.

5

Si no puede pagar miles de dólares por un Mac decente, entonces hay una opción para ejecutar OSX y XCode en la nube:

http://www.macincloud.com/

Cuestiones relacionadas