如何用Sublime Text 2编译和运行一个简单的C程序?

时间:2012-04-08 00:34:34

标签: c macos gcc sublimetext sublimetext2

我想用GCC编译一个简单的C程序。我需要在sublime-build文件中添加什么内容?

5 个答案:

答案 0 :(得分:14)

Mac OS X:

{
"cmd" : ["gcc", "$file_name", "-o", "${file_base_name}"],
"selector" : "source.c",
"shell":true,
"working_dir" : "$file_path"
}

视窗:

{
"cmd" : ["gcc", "$file_name", "-o", "${file_base_name}.exe"],
"selector" : "source.c",
"shell":true,
"working_dir" : "$file_path"
}

答案 1 :(得分:3)

接受的答案对我不起作用。

我所做的是以下内容:

{
  "cmd" : ["make $file_base_name && ./$file_base_name"],
  "selector" : "source.c",
  "shell": true,
  "working_dir" : "$file_path",
}

shell设置为true表示它将cmd读为一行,因此我调用make编译然后运行脚本。另一个选项是将shell设置为false,但您无法运行多个cmd。所以我让它工作的唯一方法就是让文件包含CMD + B,然后用CMD + Shift + B运行:

{
  "cmd" : ["make", "$file_base_name"],
  "selector" : "source.c",
  "shell": false,
  "working_dir" : "$file_path",

  "variants": [
    {
      "cmd" : ["./$file_base_name"],
      "name": "Run"
    }
  ]
}

答案 2 :(得分:0)

在windows中,使用file_regex

编译并运行
{
    "cmd": ["gcc", "$file_name", "-o", "${file_base_name}.exe", "&&", "${file_base_name}.exe"],
    "file_regex": "^([^:]+):([0-9]+):",
    "selector": "source.c",
    "shell": true,
    "working_dir": "$file_path"
}

答案 3 :(得分:0)

适用于Mac

{
"cmd": ["bash", "-c", "g++ '${file}' -o '${file_path}/${file_base_name}' && osascript -e 'tell application \"Terminal\" to activate do script \"clear&&${file_path}/${file_base_name} && read -p \\\"Press Enter to exit.\\\"&&exit\"'"],
"file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
"working_dir": "${file_path}",
"selector": "source.c, source.c++",

"variants":
[
    {
        "name": "Run",
        "cmd": ["bash", "-c", "g++ '${file}' -o '${file_path}/${file_base_name}' && '${file_path}/${file_base_name}'"]
    }
]

}

对于Windows

{
"cmd": ["g++", "${file}", "-o","${file_path}/${file_base_name}"],
"file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:?(.*)$",
"working_dir": "${file_path}",
"encoding":"cp936",
"selector": "source.c",
"variants":
[
    {
    "name": "Run",
    "cmd": ["cmd","/C","start","cmd","/c", "${file_path}/${file_base_name}.exe &pause"]
    }
]
}

上面的配置文件使您在终端(Mac)或cmd(窗口)中输入数据,输出也显示在终端或cmd中。

答案 4 :(得分:0)

LINUX!在终端,语言中编译和运行C
创建一个新的Build System并粘贴此代码:

{
"cmd": ["xterm-256color -e 'zsh -c \"gcc $file_name -o ${file_base_name} && ./${file_base_name} ;echo;echo Presiona ENTER para salir...; read line\"'"],
"selector" : "source.c",
"shell": true
}
  

echo $ SHELL =知道你使用的是哪个shell(zsh)---------------------------------- --------------------------- echo $ TERM =知道你使用哪个终端(xterm-256color)-------- -----------------------------------

:d