崇高的文本构建系统,只是"make"



我正在尝试通过在顶部目录中简单地执行make来构建我的项目。但是,当我这样做时,我收到以下错误:

[Errno 2] No such file or directory
[cmd:  [u'make']]
[dir:  /Users/jonathanong/Workspace/template]
[path: /usr/local/bin]
[Finished]

这是在将构建配置设置为 Make 之后。

我在崇高文本 2.0.1,OS X 10.8.2 上。我的生成文件包括执行全局安装的node.js二进制文件。我必须做什么?

这是因为make不在你的路径中。 如果可以在终端中构建,请使用which make找出要make的路径,然后将其添加到要构建的路径中。 您可以编辑生成文件生成系统以添加路径。

新的生成文件规则应如下所示:

{
   "cmd": ["make"],
   "file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
   "working_dir": "${project_path:${folder:${file_path}}}",
   "selector": "source.makefile",
   "path": "/usr/local/bin:/Applications/Xcode.app/Contents/Developer/usr/bin",
   "variants":
    [
      {
        "name": "Clean",
        "cmd": ["make", "clean"]
      },
      {
        "name": "Test",
        "cmd": ["make", "test"]
      }
    ]
}

这基本上是默认的make目标,但我添加到 PATH 中,并且(当然)是一个测试目标。 您可能需要扩展 PATH 才能找到 gcc、ifort 或任何用于编译的内容。 在 Linux 和 Mac 上使用 : 分隔目录,在 Windows 上使用;来分隔目录。您还可以更改其他环境变量,我必须设置 DYLD_LIBRARY_PATH 和 CPATH,以便我的库和包含目录可用。

它应该在Sublime首选项的用户目录中保存为Make (OSX).sublime-build。 (OSX)将确保此文件仅在Mac上使用,因此当您将首选项复制到非Mac计算机时,您不会破坏路径。

一个更可取的解决方案是 IMO 调整插件中的 PATH,因此您只需为所有构建系统和所有调用外部命令的插件设置一次。

你可以做

import os
os.environ['PATH'] += os.pathsep + '/my/extra/path'

真实世界的例子存在于 https://github.com/schlamar/ST3User/blob/master/preferences.py

如果您的 makefile 通过转到其 in 目录并键入 make 来工作,那么这个自定义的崇高构建文件可以工作:

 {  
      "working_dir": "${file_path}",  
      "cmd": ["make"],  
      "variants":  
 [  
   {  
        "working_dir": "${file_path}",  
     "name": "Run",  
     "cmd": ["./a.out"]  
   }  
 ]  
 }  

相关内容

最新更新