制作适用于Windows / Linux的iPhone IDE有哪些挑战?

时间:2010-03-08 20:03:03

标签: objective-c iphone ide compiler-construction

首先,这可能吗?

如果是这样的话:

在为Windows或Linux进行iPhone / iPod开发的XCode仿制中,我会遇到哪些挑战?

我在考虑使用gcc作为IDE的objective-c和(VB).NET的实际编译器。那会有用吗?

在设备上测试或提交到应用商店之前,无需编译到iPhone OS。也许在“黄金时段”之前编译到本地操作系统格式(Windows或Linux)会更容易。

这个概念可行吗?评论?如何实施的想法?

2 个答案:

答案 0 :(得分:1)

如果你想支持所有的UIKit和Cocoa Touch,那么这些问题将无法克服。你花了两年时间试图开始然后放弃,而其他人都乐于为iPhone和iPad以及其他设备开发应用程序。即使尝试也会后悔。

但是如果你想创建自己的框架来制作iPhone应用程序,立即在OpenGL之上构建,它可能是可能的。您将创建一个渲染到OpenGL视图的模拟器,最终的应用程序也会在OpenGL视图中渲染所有内容,而不会触及任何UIKit。您可以使用纯C或一些强大的跨平台语言(如Lua),编译甚至解释。顺便提一下,Corona framework或多或少是这样的:构建在OpenGL之上,触及很少的iPhone SDK,使用编译的Lua。他们开发了自己的模拟器,它只能在OSX上运行,但可能相对容易移植到Linux上。

您甚至可以使用Objective-C作为语言,并使用GNUstep Base的(与iPhone兼容的部分)提供精心挑选的Cocoa API子集。然后用户可以使用像NSString这样的标准类。

尽管如此,所有这些作为一个思想实验都非常有趣,除非你有一个团队在一起开展这项工作作为一个开源项目。这比你想象的要难。例如,您的模拟器将无法模拟在iPhone上生成内存警告的方式。

如果有人想在Linux上开发iPhone应用程序,那么使用OpenGL在C / C ++中编写整个应用程序更有意义,然后基本上只是将该代码打到一个普通的iPhone OpenGL项目上。那是最快的路径。下一种可能性是使用另一种语言,这也不是太难。但是,除此之外的“iPhone IDE”只不过是在Linux中围绕OpenGL视图设置类似iPhone的框架。

答案 1 :(得分:1)

实际上,Felixyz谈到了你应该看一看的事情。见:http://www.gnustep.org/。它们几乎包含了* nix,OS X和windows的每个变体的二进制文件。该网站声称“GNUstep寻求与Cocoa和OpenStep兼容的源代码,因此可用于在Macintosh(Cocoa),Unix和Windows之间开发和构建跨平台应用程序。”对于这样的项目来说,这将是一个很好的起点,

我怀疑GNUStep是否涵盖了所有OSX的功能,但这是一个开始。

我想在另一个平台上开发iPhone / iPod应用程序,你需要获得Apple的包含(合法性可能是一个问题),并应用他们所有的工具链补丁,加上我还有一百万个其他东西。我可能会忽视。

更好的项目是在GNUStep中实现缺少的功能,以便在主机平台下无缝支持OSX应用程序。也许那时你可以在你想要的操作系统上运行xcode native。