我知道开发iPhone应用程序(至少要无痛)至少需要Mac。但是,是否可以在Linux中使用Objective-C开发普通的桌面应用程序?例如,我可以使用Objective-C的开发库制作游戏,然后将其发布给Linux,而不是iOS吗?
在Linux 上有许多使用GNUstep(可可API的免费版本)的普通桌面应用程序。
对于游戏,您可以尝试sdlobjc-用于Objective-C的SDL绑定。
甚至还有一个名为Étoilé的Linux发行版,它使用基于GNUstep的用户环境以及用Objective-C编写的所有自己的GUI应用程序。
如果您想学习如何在Linux(或cygwin)上使用GNUstep在Objective-C中进行编程,则可能存在一些问题:
您必须在Windows中使用cygwin来构建应用程序。这意味着:
a)由于cygwin将POSIX API调用转换为Win32 API调用,因此可能会使某些应用程序变慢。例如,fork()
调用将在Win32的CreateProcess调用和其他一些调用中转换,并且效率不如UNIX。
b)您的应用程序必须与cygwin的dll一起分发
c)您的应用程序不能是64位的(至少目前是这样)
d)您的应用程序将所有Windows磁盘驱动器视为unix文件系统层次结构的一部分(c:和d:将为/ cygdrive / c和/ cygdrive / d),并且/ bin / tmp / usr / etc在/。
没有关于GNUstep或不使用Mac OS编程Objective-C的最新书籍。这里是Stephen Kochan的书“ Objective-C 2.0编程(第二版)”,不幸的是,他省略了有关如何在Linux或Windows下构建基本示例的解释。我希望它在第三版中得到修复。
GNUstep具有自己的主题,因此应用程序的主题可能与Linux中的GTK Linux应用程序或Windows中的常规主题应用程序不同。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句