如何构建在线Objective-C编译器

时间:2011-11-07 17:45:26

标签: php objective-c compiler-construction online-compilation

我只是在寻找一个在线的Objective-c编译器。目前我只找到ideone.com,但它显示任何基金会(例如NSObject)或UIKit(例如UIView)类的错误。

是否有针对objective-c的在线编译器可以处理Foundation和UIKit类?如果做不到这一点,我怎么能在自己的服务器上自己做这个呢?


修改

因为似乎没有现有的在线编译器。我现在要求如何指导在服务器上构建我自己的在线Objective-c编译器。

它需要能够获取代码文件,编译它并输出任何错误和警告。它还必须能够通过访问必要的框架来处理Foundation和UIKit类。

我不知道任何网络开发语言,所以尽可能多的帮助会很棒!

4 个答案:

答案 0 :(得分:4)

这个问题很有意思,但涵盖的确非常广泛。第一步是深入了解您正在尝试创建的内容:

  • 这是你想要为自己使用而破解的东西,还是你试图为他人制作产品的东西?后者当然会有前所未有的各种担忧和要求。
  • 您是否希望该服务像“在线Xcode”,能够管理文件的“项目”并让您测试各个文件的更改?或者你真的只是想将一堆文本(一个.m文件?)粘贴到一个表单中并让服务为你编译它并向你显示输出?

假设你想要一些非常基础的东西(一个可以编译Obj-C但是编译器可以使用Foundation和UIKit的形式),你基本上就是:

  • 有一个Web前端(PHP可能非常简单地用于此),它将显示一个表单并POST提交表单文本。
  • PHP获取代码字符串,在服务器磁盘上生成临时.m文件
  • PHP使用与标准空Xcode项目相同的构建命令发送到gcc。您需要将所有iOS SDK内容放在服务器上,以便GCC可以访问它。
  • 获取gcc输出并将其注入响应页面。

如何使用PHP,以及如何正确获取gcc的内容有点超出了这个问题的范围,并且取决于您对单个组件的适应程度。 (正如评论者指出的那样,对于使用iOS SDK材料的任何协议,特别是 ,如果除了您自己以外的任何人都可以使用您的服务,那么值得小心谨慎。)

答案 1 :(得分:2)

http://ideone.com/ http://www.compileonline.com/compile_objective-c_online.phphttps://compilr.com/(注意:compilr不是免费的)该网站有一个客观的c编译器。这不好只是测试不是问题

click new code > choose objective-c > write your codes and click submit button.

问题在于那里有很多广告,但这并不重要:))

  

警告如果您不选择私人,您的代码似乎在网站上

enter image description here enter image description here

答案 2 :(得分:1)

我知道它并不是一个真正完整的“网络服务”,但是您可以使用基于Web的SSH客户端(或者您正在使用的任何平台上的应用程序)来连接到您家中的mac并运行clang / gcc来自命令行,以及vim或您选择的任何命令行文本编辑器。当我忘记将我的CS项目投放到Dropbox并需要从校园访问时,这就是我倾向于做的事情。

答案 3 :(得分:0)

你的目标是什么?能够测试代码片段吗?

它不在线且不是免费的,但您可以查看CodeRunner。它可以通过Mac App Store获得,它就像5美元或者其他东西。基本上,您可以使用各种语言测试代码片段,包括Objective-C。 (顺便说一句,我与CodeRunner没有任何联系。)

如果您正在寻找构建iOS应用程序的Xcode替代品,我认为您不会找到任何。