【问题标题】:Sublime Text Build System that just "make"只是“制作”的 Sublime Text 构建系统
【发布时间】:2014-02-13 03:56:30
【问题描述】:

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

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

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

我使用的是 Sublime Text 2.0.1、OS X 10.8.2。我的 Makefile 包括执行全局安装的 node.js 二进制文件。我需要做什么?

【问题讨论】:

标签: makefile sublimetext2 sublimetext


【解决方案1】:

这是因为 make 不在您的 PATH 中。如果您可以在终端中构建,请使用which make 找出make 的路径,然后将其添加到构建路径中。您可以编辑makefile build system 以添加您的路径。

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

{
   "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 或您用于编译的任何内容。 Use : to separate directories on Linux and Mac, and ; on Windows。您还可以更改其他环境变量,我必须设置 DYLD_LIBRARY_PATH 和 CPATH 以便我的库和包含目录可用。

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

【讨论】:

  • 这是否意味着我必须为每个项目制作一个构建文件?
  • 您可以同时拥有用户设置构建文件和项目级构建文件。
  • 好吧,所以我的路径是/usr/bin/make,所以我将/usr/bin 作为我的路径。现在我收到make: component: No such file or directory。我想我需要让 sublime text 知道/usr/local/bin/component 和/或/usr/local/bin。我该怎么做?
  • 好吧/user/bin:/user/local/bin 工作。不知道为什么 : 是分隔符。谢谢!
  • 只需在 ST 控制台中输入import os; os.environ['PATH'] 即可使用哪个 PATH...
【解决方案2】:

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

你可以这样做

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

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

【讨论】:

    猜你喜欢
    • 2020-10-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-10-21
    • 2015-03-01
    • 2013-10-14
    相关资源
    最近更新 更多