LOGO
Yutuo

之前说了SublimeText下C编译环境的设置,C++的设置也大体相同。其设置方法如下

1. 安装C语言编译器MinGW,并把MinGW安装目录下的bin目录添加到环境变量PATH里。详细方法参照MinGW安装和使用

2. 因为SublimeText原本的编译环境不支持非英语系统,所以要先修改SublimeText。把SublimeText安装目录下的DataPackagesDefaultexec.py的45行改成下面的代码:

Python
# proc_env[k] = os.path.expandvars(v).encode(sys.getfilesystemencoding())
proc_env[k] = os.path.expandvars(v.decode(sys.getfilesystemencoding())).encode(sys.getfilesystemencoding())

3. 在SublimeText安装目录下的DataPackagesUser新建一个C.sublime-build(注意不要修改文件名和大小写)。因为SublimeText默认的执行不支持输入,所以我添加了一个RunInCommand,可以让程序在CMD下面执行。内容如下

Python
{
	"cmd": ["g++", "${file}", "-o", "${file_path}/${file_base_name}"],
	"file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
	"working_dir": "${file_path}",
	"selector": "source.c, source.c++",

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

4. 设置快捷键。在SublimeText里,打开Preferences -> Key Bindings - User,在里面添加一行{ "keys": ["ctrl+alt+shift+b"], "command": "build", "args": {"variant": "RunInCommand"} }。如果已经设置,跳过。我定义的是ctrl+alt+shift+b,也可以根据自己的定义,以下是我的 Key Bindings - User文件内容

Python
[
    { "keys": ["ctrl+alt+shift+b"], "command": "build", "args": {"variant": "RunInCommand"} }
]

5. 测试。自己在SublimeText写一个C++程序,ctrl+b为编译;ctrl+shift+b为编译后在SublimeText里显示结果;ctrl+alt+shift+b为编译后在CMD里运行。

注意:源代码路径中不能有空格和非英文字符。

转载请注明:宇托的狗窝 » SublimeText下C++编译环境的设置

上一篇 下一篇
发表我的评论
取消评论

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

网友最新评论 (11)

  1. 输入代码,ctrl+b后显示
    g++: error: : No such file or directory
    g++: fatal error: no input files
    compilation terminated.
    [Finished in 0.4s with exit code 1]


    麻烦问下,这是哪里出问题了?
    福俩2014-11-15 13:57:29回复
    • 你的目录文件目录里有没有中文或者空格,有的话,可能出现你说的那个问题。
      宇托2014-11-16 23:06:02回复
      • 你好 我也出现了这个问题 但源代码的路径包括哪些呢
        mumu2015-03-20 21:50:02回复
        • 比如你的C文件的路径是 D:\Studio\C_CPP\test.c 。源代码的路径就是指这整个目录:"D:\Studio\C_CPP\test.c"。在这个路径里不能有空格,&符号
          宇托2015-03-20 21:59:19回复
  2. 你好 我也是这样配置的,但是后面那个“设置快捷键”一直是不对,没有在CMD中运行。请问怎么解决呢?
    黄鑫2014-10-11 17:23:34回复
    • 要确认两个地方:
      1. 源代码的路径里不能有空格和非英文字符
      2. 写的代码是否编译成成功,也就是说在源代码目录是否有EXE文件生成。
      宇托2014-10-14 10:23:48回复
  3. 你好,我参照你的方法配置C++编译环境之后,对.c文件可以支持cmd运行,但是对.cpp文件不支持cmd运行,提示是“不是内部或外部命令,也不是可运行的程序或批处理文件”。请问,如何解决?谢谢!
    lele8610092014-05-06 14:48:13回复
    • 1,在命令行运行g++,确认g++是否配置到PATH里。
      2,确定CPP文件路径里是否有空格。
      3,确定是否能编译成功。
      yutuo2014-05-07 10:13:20回复
  4. X:Users用户名AppDataRoamingSublime Text 2
    Noble2014-01-02 17:13:38回复
  5. 老师,我现在用st3,确实不支持中文,在cmd输入的中文为乱码,st3没有exec.py这个文件呀,请问应该怎么解决?
    bantao2013-09-27 01:55:44回复
    • 我用的也是ST3,但好像没有你说的这个问题,你能详细说一下吗?
      yutuo2013-10-03 11:45:29回复