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

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

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

是否有可以处理 Foundation 和 UIKit 类的 objective-c 在线编译器?如果做不到这一点,我该如何在自己的服务器上自己执行此操作?


编辑:

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

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

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

最佳答案

这个问题很有趣,但涵盖的范围确实很广。第一步是准确地研究您要创建的内容:

  • 这是您想组合起来供自己使用的东西,还是您尝试为他人生产的东西?后者当然会有前者可能没有的各种顾虑和要求。
  • 您是否希望该服务像“在线 Xcode”一样,能够管理文件“项目”并让您测试对单个文件的更改?或者您真的只是想将一堆扁平的文本(一个 .m 文件?)粘贴到一个表单中,然后让服务为您编译它并显示输出结果?

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

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

如何使用 PHP,以及如何正确使用 gcc 的东西有点超出了这个问题的范围,并且取决于您对各个组件的熟悉程度。 (正如一位评论者所指出的,对于您可能就 iOS SDK Material 的使用达成的任何协议(protocol),都值得谨慎对待,特别是如果除您之外的任何人都可以使用您的服务。)

关于php - 如何构建在线 Objective-C 编译器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8040408/

相关文章:

compiler-construction - LL(1) 是哪些当代计算机语言?

scala - 为什么 scalac 会生成额外的/包装闭包

php - 转换 PDF 并添加首页、页脚和水印

php - 使用迁移添加约束 - yii 框架

objective-c - Xcode:将 Cocoa 应用程序目标添加到命令行工具

objective-c - Objective-C/Cocoa 开发的关键概念是什么?

c++ - 需要什么软件才能开始在 Windows 中开发无需 cygwin 或 .Net 等其他工具即可运行的 c/c++?

PHP 文件上传到 linux cPanel 显示成功,但找不到文件

php - 在一个字段中打印多个值

objective-c - 如何使用 Objective C 在 iOS 中实现 GPS 功能?