我听说如果你想开发iPhone应用程序,你需要一台Mac电脑。这是真的吗?
有可能使用Linux开发iPhone应用程序吗?如果是,我需要什么,我从哪里下载必要的工具?
我听说如果你想开发iPhone应用程序,你需要一台Mac电脑。这是真的吗?
有可能使用Linux开发iPhone应用程序吗?如果是,我需要什么,我从哪里下载必要的工具?
当前回答
如果你珍惜你的时间,买一台Mac吧!我对Linux开发选项的了解还不够多,无法提供一个可行的解决方案,但似乎建议的方法涉及一些相当迂回的工作。如果你打算认真编写和销售iPhone应用程序,我认为你可以很容易地收回购买Mac Mini或Macbook的成本。: -)
其他回答
这个问题的答案取决于你是否想要开发通过iPhone商店发行的应用。如果你没有,也不介意为“越狱”的iPhone人群开发——那么从Linux开发是可能的。
看看这个家伙的页面,有一个全面的(如果有点复杂)指南,告诉你该怎么做:
http://www.saurik.com/id/4
你说得对,非越狱手机仅限于苹果应用商店,苹果“有权”执行任何规则,这完全是非自由领域。 然而,在开发过程中,开发者根本不需要与苹果打交道。您可以使用例如rsync将代码上传到设备并进行测试。
你可能能够在Linux机器上编写代码,最终会在iPhone或iPad上运行,但最终你需要一台Mac来测试或将代码部署到iPhone或提交到应用程序商店。所以最终你还是需要一台Mac电脑,所以你也可以用苹果提供的所有工具在Mac电脑上工作。除了Xcode和Objective-C,还有其他选择,比如Monotouch——但这些也利用了苹果的工具。
你可以在Linux上的虚拟机上运行OS X。然而,我应该指出,这将打破OSX许可协议,即使你购买了OSX的副本-因为它只被授权在苹果硬件上运行。
很抱歉告诉你这个消息——围绕iPhone/iPad的生态系统是被严格控制的。
编辑:一个主要的例外是为iPhone编写web应用程序。iPhone上有一些优秀的网页应用,它们的用户体验几乎和原生应用一样好。但是我把你的问题理解为原生应用开发。尽管用户可以创建一个图标来启动Web应用程序,但它们仍然是“二等”公民。
我曾经成功地使用cjacker的iOS clang工具链在linux上开发iOS应用。基本上,它由来自linux发行版的上游clang和llvm工具、苹果连接器的linux端口和一些额外的工具组成,以帮助简化构建过程(例如将xcode项目转换为Makefile格式)。
它确实需要几个步骤来安装,但你是一个软件开发人员,所以你应该习惯了。我在网上发布了Debian 7 (Wheezy)的最新howto:
https://rogerkeays.com/how-to-build-an-ios-toolchain-for-linux-debian-7
否则,你会想要使用一些比较老的通用指令:
http://code.google.com/p/ios-toolchain-based-on-clang-for-linux/wiki/HowTo_en
祝你好运。
我所知道的在iPhone Linux上进行开发的唯一方法是安装Vmware,并在虚拟机中运行OS X。尽管如此,这样做还是有一些“法律”问题。据报道,OS X服务器可以虚拟化,但就开发故事而言,我不知道。
如果你是认真的,那就是我要调查的。
祝你好运。