¿Existe alguna forma de manipular el SDK del iPhone en una máquina Windows? ¿Hay planes para una versión del SDK del iPhone para Windows?
La única otra forma que se me ocurre es ejecutar una imagen de Mac VM en un servidor VMWare que funcione en Windows, aunque no estoy muy seguro de la legalidad de esto.
Ciertamente es posible desarrollar en una máquina Windows, de hecho, mi primera aplicación fue desarrollada exclusivamente en la vieja Dell Precision que tenía en ese momento :)
Hay tres rutas;
La primera ruta requiere modificar (o utilizar una imagen pre-modificada) de Leopard que pueda ser instalada en un PC normal. Esto no es tan difícil como podría pensarse, aunque la relación éxito/esfuerzo dependerá de lo cerca que esté el hardware de tu PC del hardware del Mac - por ejemplo, si estás ejecutando un Core 2 Duo en una placa base Intel, con una tarjeta gráfica NVidia estás de risa. Si estás ejecutando una máquina AMD o algo sin SSE3 la cosa se complica un poco más.
Si adquieres (o ya tienes) una versión de Leopard, esto es un área gris, ya que el EULA de Leopard establece que sólo puedes ejecutarlo en una máquina "con etiqueta de Apple". Como muchos señalan, si pones una pegatina de Apple en tu PC probablemente estés cubierto.
La segunda opción es más costosa. El EULA para la versión de estación de trabajo de Leopard impide que se ejecute bajo emulación y como resultado, no hay soporte en VMWare para esto. El servidor de Leopard, sin embargo, PUEDE ejecutarse bajo emulación y puede utilizarse para fines de escritorio. Sin embargo, el servidor de Leopard y VMWare son caros.
Si estás interesado en la opción 1) te sugiero que empieces en Insanelymac y leas las secciones de OSx86.
Sin embargo, creo que deberías considerar si el tiempo que vas a invertir va a valer el dinero que te vas a ahorrar. Para mí lo fue porque me gusta trastear con este tipo de cosas y empecé durante las primeras betas del iPhone, meses antes de que su App Store estuviera disponible.
También puedes comprar un Mac Mini de bajo coste en eBay. No necesitas mucha potencia para ejecutar el SDK y siempre puedes venderlo más tarde si decides dejar de desarrollar o comprar un Mac mejor.
Actualización: No puedes crear una máquina virtual de Mac OS X Client para OS X 10.6 y anteriores. Apple no permite la virtualización de estos sistemas operativos cliente. Con Mac OS X 10.7 (Lion) en adelante, Apple ha cambiado su acuerdo de licencia en lo que respecta a la virtualización. Fuente: VMWare KnowledgeBase
El SDK sólo está disponible en OS X, lo que te obliga a utilizar un mac. Si no quieres comprar un mac, puedes ejecutar OS X en una máquina virtual en tu equipo Windows, o puedes instalar OS X en tu PC.
En mi experiencia, la solución de la máquina virtual es inusualmente lenta (en un portátil core2 duo con 2G de ram). Si te apetece probarlo busca el torrent. Probablemente no merezca la pena.
La otra opción es instalar OS X en tu PC, lo que comúnmente se conoce como un hackintosh. Los hackintosh funcionan bastante bien - mi amigo acaba de vender su mac porque su hackintosh quad core de Dell era realmente mucho más rápido que el hardware de apple (y costaba aproximadamente 1/3). Puedes encontrar muchos artículos sobre cómo hacerlo; aquí hay uno sobre cómo instalarlo en un portátil Dell Inspirion 1525: tutorial de hackbook pro
Por supuesto, ambas opciones son probablemente contrarias a algún esquema de licencias, así que proceda bajo su propio riesgo.
Puedes usar WinChain
Citando la página del proyecto:
Es la forma más fácil de construir la cadena de herramientas del iPhone en un ordenador con Windows XP/Vista, que a su vez, puede tomar el código fuente Objective-C que escribas usando sus UIKit Headers (incluidos con winChain) y compilarlo en una aplicación que puedas usar en tu iPhone.