可能重复:
Game programming on Objective-C and linux的Objective-C在Linux中
我知道开发iPhone应用程序(怕疼,至少)几乎需要一台Mac。但是,是否可以在Linux中使用Objective-C开发普通的桌面应用程序?例如,我可以使用Objective-C的开发库制作游戏,并将它发布到Linux上,而不是iOS?
可能重复:
Game programming on Objective-C and linux的Objective-C在Linux中
我知道开发iPhone应用程序(怕疼,至少)几乎需要一台Mac。但是,是否可以在Linux中使用Objective-C开发普通的桌面应用程序?例如,我可以使用Objective-C的开发库制作游戏,并将它发布到Linux上,而不是iOS?
有很多normal desktop applications它们在Linux上使用GNUstep(免费版的Cocoa API)。
对于游戏,您可以尝试sdlobjc - 针对Objective-C的SDL绑定。
甚至还有一个名为Étoilé的Linux发行版,它使用基于GNUstep的用户环境和Objective-C中编写的所有自己的GUI应用程序。
如果您想了解如何在Objective-C在Linux(或Cygwin的)使用GNUstep的程序有一些可能出现的问题:
必须使用cygwin在Windows中构建的应用程序。这意味着它:
a)由于cygwin将POSIX API调用转换为Win32 API调用,某些应用程序可能会变慢。例如,fork()
调用将在Win32的CreateProcess调用和其他一些调用中进行转换,效率将低于UNIX。
B)您的应用程序必须与Cygwin的DLL
c)您的应用程序不能是64位(至少目前如此)
d)你的应用程序将看到所有的窗口磁盘驱动器的分布Unix文件系统层次结构的一部分(C:和d:将/cygdrive/C和/cygdrive/d),你将有/斌/ tmp目录的/ usr /等可用的编缉下/以及。
有没有关于GNUstep或关于编程Objective-C不使用Mac OS的最新书籍。 Thre是Stephen Kochan的书“Objective-C 2.0编程(第2版)”,他很遗憾地忽略了如何在Linux或Windows下构建基本示例的解释。我希望它在第3版中得到修复。
GNUstep拥有自己的主题,因此应用程序的主题可能与Linux中的GTK Linux应用程序或Windows中常见的主题应用程序不同。
是GNUstep的整个IDE,还是它只是一个框架?按主题我猜你的意思是gui主题。 – zeboidlund