sublime自定义构建命令,如何?

时间:2013-03-08 17:06:22

标签: sublimetext2

我有一个程序,它使用他们所谓的wmake来构建代码,这非常方便。假设我有一个文件夹和一个C ++文件:/path/to/file.C,我所要做的就是转到/path/to文件夹然后输入wmake命令并返回并设置所有文件。

当我使用sublimetext时,我想打开这个file.C文件,然后按ctrl + B来构建它,但它不起作用。目前我定制了一个构建系统,如:

{
    "cmd": "wmake"
}

错误显示为

[Errno 2] No such file or directory
[cmd:  wmake]
[dir:  /path/to/file.C]
[path: /home/meee/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/bin]
[Finished]

任何人都知道如何在sublimetext2中自定义构建系统?我在网上阅读了手册,但仍然没有任何线索。感谢

我的目标

我想做的就是获得与在shell窗口中键入的简单

相同的效果
wmake /path/to

编辑-1

我试过这个,它也没有用,同样的错误。我不明白为什么“没有这样的文件”?

{
    "cmd": "wmake",

    "selector" : "source.C",

    "shell": false,

    "working_dir" : "$file_path",

    "variants":

    [
        {
        "name": "Run",
        "cmd": ["bash", "-c", "wmake '${file_path}'"]
        }
    ]
}

编辑-2

我尝试使用wmake的完整路径,错误抱怨environment variable $WM_OPTIONS not set。所以在shell中,每次〜/ .bashrc自动加载,并初始化所有环境变量,但在Sublime中不是这样!!!!!!!!!!!!!我该怎么办???

{
    "cmd": "/fullpath/to/wmake",

    "selector" : "source.C",

    "shell": false,

    "working_dir" : "$file_path",

    "variants":

    [
        {
        "name": "Run",
        "cmd": ["bash", "-c", "/fullpath/to/wmake '${file_path}'"]
        }
    ]
}

1 个答案:

答案 0 :(得分:0)

您的构建命令未完成。请参阅我自定义的C版本:

{

  "cmd" : ["/usr/local/gfortran/bin/gcc", "$file_name", "-o", "${file_base_name}", "-lgsl","-lgslcblas", "-lm" , "-Wall"],

  "selector" : "source.c",

  "shell":false,

  "working_dir" : "$file_path",

  "variants":

    [
       {
        "name": "Run",
        "cmd": ["bash", "-c", "/usr/local/gfortran/bin/gcc '${file}' -lgsl -lgslcblas -lm  -Wall -o '${file_path}/${file_base_name}' && '${file_path}/${file_base_name}'"]
       }
    ]

}