Sublime Text 2.如何为Objective-C代码创建项目?

时间:2013-09-16 22:08:26

标签: objective-c sublimetext2

如何在Sublime文本中创建一个可以处理编译和链接Objective-C文件的项目?

我可以构建并运行单个目标-c文件。我正在试图编译和链接多个文件。项目文件是答案吗?我很难过。

1 个答案:

答案 0 :(得分:3)

项目文件对于组织所有文件非常有用,我绝对建议您为每个项目使用它们,但是build system会在这里找到您想要的内容。这些是非常灵活和强大的系统,尤其是当您充分利用Build System Reference中列出的选项和变量时。下面是一个编译(并可选择运行)单个文件的一个相当简单的示例(从this gist修改为半唯一输出文件名):

{
  "cmd": ["bash", "-c", "clang -lobjc -framework Cocoa -framework Carbon -o /tmp/${file_name}_sublime_build $file"],
  "file_regex": "^(.*?):([0-9]+):([0-9]+): (.*)",
  "selector": "source.objc",
  "variants": [
    {
      "name": "Run",
      "cmd": ["bash", "-c", "clang -lobjc -framework Cocoa -framework Carbon -o /tmp/${file_name}_sublime_build $file && /tmp/${file_name}_sublime_build"]
    }
  ]
}

对于多个类文件,最好的选择是将简单的Makefile组合在一起并使用Sublime的内置Make构建系统:

{
    "cmd": ["make"],
    "file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
    "working_dir": "${project_path:${folder:${file_path}}}",
    "selector": "source.makefile",

    "variants":
    [
        {
            "name": "Clean",
            "cmd": ["make", "clean"]
        }
    ]
}

这样,您不需要为每个项目都有一个自定义的.sublime-build文件(尽管如果它们足够相似,您也可以使用它),所有您需要做的事情创建一个Makefile,设置适当的项目变量,你就可以了。

祝你好运!