Iniciar o desenvolvimento de aplicativos de iPhone no Linux? [fechado]
é possível desenvolver aplicativos de iPhone usando Linux? Em caso afirmativo, de que preciso e onde descarrego as ferramentas necessárias?
17 answers
Para fornecer uma resposta diferente, estou a correr o OS X e o Xcode numa máquina virtualizada (VMware) no Linux. CPU é um Core2Quad (Q8800), e é perfeitamente rápido. I found a prebuilt VM online (i'll leave it to you to find) O desenvolvimento do Xcode / iPhone funciona perfeitamente, assim como a depuração via USB para o próprio telefone.
Na verdade, surpreendeu - me muito, mas não tive problemas nenhuns.A resposta a isso realmente depende se você quer ou não desenvolver aplicativos que são distribuídos através da loja de iPhones. Se você não o fizer, e não se importa de desenvolver para a multidão "jailbroken" do iPhone - então é possível desenvolver a partir do Linux.
Veja na página deste capítulo um guia abrangente (se um pouco complexo) sobre o que fazer :
O SDK do iPhone e o software livre: não corresponde
A Apple lançou recentemente um kit de desenvolvimento de software (SDK) para o iPhone, mas se você estava esperando para portar ou desenvolver software de código aberto original com ele, a notícia não é boa. A assinatura de código e as condições de não divulgação fazem do software livre um "NO-go".
O SDK em si é um download gratuito, com o qual você pode escrever programas e executá-los em um simulador de software. Mas a fim de realmente liberar software que você escreveu, você deve se inscrever no Programa de desenvolvimento de iPhone -- um passo separado a partir do download do SDK, e um que requer a aprovação da Apple.
Eu acho que é bastante elitista para eles pensar que apenas os usuários de macos são bons o suficiente para escrever programas para seu telefone, e o fato de que você precisa comprar uma licença de $100 se você quiser publicar suas coisas, realmente torna mais difícil para o programador hobby. No entanto, se é isso que você precisa fazer, eu estou planejando saltar através de seus arcos; eu realmente gostaria de ter algumas coisas desenvolvidas no meu iPhone.
Havia um projecto dedicado a resolver este defeito: iphone-dev
O objectivo do projecto iphone-dev é criar uma ferramenta Livre, portátil e de alta qualidade para permitir o desenvolvimento do iPhone Apple e de outros dispositivos incorporados com base na plataforma ARM/Darwin.
Em relação à cadeia de ferramentas alternativa, o site da Saurik é útil, mas para o mais recente desenvolvimento de firmware ele indica construir no próprio iPhone e permanece claro de indicar que você pode precisar copiar os arquivos de firmware necessários para o seu ambiente Linux. Não é impossível, mas apenas requer trabalho adicional, especialmente para assinar o código (existem soluções alternativas abertas lá fora também).
Além disso, dê uma olhada em outros guias (para a mesma cadeia de ferramentas) que abordam mais metodicamente. [[[1]} eu sugeriria ainda fazer a compilação final, assinatura de código e embalagem no XCode (o que pode significar pedir emprestado o Mac de alguém) no caso de você encontrar problemas ao enviar a aplicação para a Apple. Usando a cadeia de ferramentas alternativa abre - se (pelo menos no Mac) a possibilidade de usar outros IDEs que não o XCode para desenvolver a aplicação e novamente recorrer ao XCode para a implantação e teste com o simulador.Claro que se conseguires o código geração de assinatura / certificado trabalhando a partir da linha de comandos fora do XCode, então você pode instalar um certificado no seu iPhone real e testar lá (instalar o aplicativo através do iTunes w/seu certificado).
A única maneira que eu sei de fazer o desenvolvimento em Linux para o iPhone seria instalar Vmware e trabalhar em fazer o OS X funcionar em uma máquina virtual. Com isso dito, há algumas preocupações "legais" em fazer isso. It is reported that OS X Server can be virtualized but as far as the development story on that I don't know.
Se estás a falar a sério, é isso que eu investigaria. Boa sorte.Você pode ser capaz de escrever código em uma caixa Linux que acabará por se encontrar em um iPhone ou iPad, mas, em última análise, você precisa de um Mac para testar ou implantar o código para o iPhone ou para enviá-lo para a App store. Então, em última análise, você precisa de um Mac, então você pode muito bem fazer o trabalho no Mac também, com todas as ferramentas que a Apple fornece. Existem alternativas ao Xcode & Objective-C, como Monotouch - mas estes utilizam as ferramentas Apple também.
Pode-se com algum trabalho executar OS X em um VM no Linux. No entanto, devo salientar que isso vai quebrar o Acordo de licença OSX, mesmo se você comprar a cópia do OSX - como ele só é licenciado para correr em Apple hardware.
Desculpe dar-lhe esta notícia - o ecossistema em torno do iPhone / iPad é muito bem controlado.
Editar: uma grande excepção a isto é escrever uma aplicação web para o iPhone. Existem alguns excelentes aplicativos web para o iPhone que são quase tão bons quanto a experiência do usuário como um aplicativo nativo. No entanto eu interpretei a sua pergunta é sobre desenvolvimento de aplicações nativas. Aplicativos Web, embora o usuário possa criar um ícone para lançá-los-ainda são cidadãos de "segunda classe".
Você pode usar Tersus (código aberto), e permite-lhe exportar a aplicação como um projecto Xcode.
O conceito é baseado em Ruby on Rails e você desenvolve o seu aplicativo móvel em Ruby e HTML, e você pode escrever o seu código em um ambiente Linux. Você pode então criar uma conta em Rhohub, onde você adiciona o código (através de GitHub), e ele permite que você compile para iPhone, Blackberry, Android, Windows Mobile e Symbian, todos fora do mesmo código. Você não tem que codificar em Objective-C Para iPhone, nem Java para Android, etc. Faz as conversões para ti. Tudo que você precisa fazer é manter as regras para a criação de um aplicativo de iPhone (ou do telefone que você deseja desenvolver) para que ele possa ser aceito no iTunes (ou no mercado equivalente).
Isto irá permitir-lhe adicionar a aplicação ao iTunes também.
Eu não encontrei nenhum emulador, no entanto, o que significa que para testar o seu aplicativo você precisa colocá-lo em um iPhone, que é uma missão.
Estou a usar esta opção porque quero criar aplicações para todos os telefones e eu usa o Rubi nos carris. Se você só quer fazer um aplicativo para um iPhone, então invista em um Mac.
Espero que isto ajude.Eu tive sucesso na criação de aplicações iOS no linux usando a montagem de ferramentas iOS clang por cjacker. Basicamente, consiste nas Ferramentas upstream clang e llvm de sua distribuição linux, uma porta linux do linker da apple e algumas ferramentas extras para ajudar a simplificar o processo de construção (como a conversão de projetos xcode para o formato Makefile).
Isso leva alguns passos para instalar, mas você é um desenvolvedor de software, então você estaria acostumado a isso. Eu postei um howto atualizado para o Debian 7 (Wheezy) online:Http://www.ninthavenue.com.au/how-to-build-an-ios-toolchain-for-linux-debian-7
Caso contrário, quer seguir as instruções genéricas que são um pouco mais antigas:
Http://code.google.com/p/ios-toolchain-based-on-clang-for-linux/wiki/HowTo_en
Boa sorte.O que não podes fazer:
- Use O Construtor de interfaces para configurar a sua interface, uma vez que é apenas Mac. (Não exigido, mas recomendado.)
- Compile o código que usa as classes de cacau da Apple-elas não existem no Linux.
- Código de teste no simulador - não há um Para Linux.
- Código de compilação para dispositivos reais ou para a App Store-tudo isto requer ferramentas que a Apple só fornece para o OS X.
Eu fiz uma tentativa de portar o cocos2d-iphone para o GNUstep para que você possa desenvolver o jogo baseado no Cocos 2D. contudo, para publicar, você precisa de um mac. cocos2d-GNUstep .
Unidade: http://unity3d.com/ Toque Sencha: http://www.sencha.com/products/touch/
Nunca obterá a aprovação da sua aplicação pela Apple se esta não for desenvolvida usando o Xcode. Nunca. E se você hackear o SDK para se desenvolver no Linux e a Apple descobrir, não se surpreenda quando você é servido. Eu sou um membro do ADC e do programa de desenvolvimento de iPhone. Confiança, a Apple leva isto muito a sério.
Não corra o risco, compre um Macbook ou Mac mini (sim, um mini pode correr Xcode - embora lentamente - aumentar a RAM se você vai com o mini). Além disso, enquanto vi o OS X hackear para continuar VMware nunca vi ninguém a correr Xcode em VM. Então, boa sorte. E eu verificava a EULA antes de te dares ao trabalho.
PS: depois de ler o acima, SIM, eu concordo se você hackear o SDK e desenvolver no Linux pelo menos fazer a embalagem final em um Mac. E submetê-lo através de um Mac. A Apple não passa pelo Código linha a linha, por isso duvido que percebam isso. Mas meu, isso é muito dinheiro e trabalho. Vai ser divertido. :)