3

我可能会在这里问一些奇怪的东西,但我不确定从哪里开始。问题是我正在考虑使用 Obj-C 和 Foundation 类在 Mac 上编写命令行工具。

但是我希望能够为不同的 Linux 发行版编译它以在未来作为服务器应用程序运行,这是一个非常大的风险。

我知道为 Linux 编译 Objective-C 本身不是问题,但我不明白的是 API 覆盖率。

据我所知,到目前为止,我可以使用 GNUStep 为 linux 编译,但是有没有一种好方法可以让我了解 API 覆盖范围的概述?我的意思是,如果我在 OSX Lion 中使用已添加到 Foundation 框架中的类,可以说,当时在 GNUStep 中不可用的风险有多大?

我希望我问的是你们能理解的问题,基本上我想避免编写一个理论上可以为 linux 编译的应用程序,但由于缺少类等,实际上不能。

谢谢!

4

2 回答 2

1

意见:风险相当高。GNU Step 是一个开源项目,它依赖于它的志愿者来保持更新。OS X Lion 对 Foundation 和 AppKit 进行了少量添加。

如果您将来想要它用于 *nix,那么您最好的选择是用通用 C/C++ 编写它,然后NSTask如果您想要 GUI,则将其薄薄地包装在一个中。

于 2012-03-12T12:03:06.017 回答
1

您应该能够通过查阅GNUStep 基础 API 文档来检查您正在使用的 API 是否可用。

如果兼容性是一个大问题,您可能希望将 GNUStep 作为您的基础。与以其他方式移动代码相比,为 mac 编译应该相当简单。当然,您总是可以选择帮助补充 GNUStep 中缺少的任何东西。

于 2012-04-15T09:01:12.427 回答