Kwok's Notes

C语言学习与开发的Sublime Text 3 与 gcc 配置记录

本文记录Windows下的C语言开发环境(Sublime Text 3 + gcc)开发环境搭建,包括MinGW的安装,gcc运行c语言,在sublime中运行以及在cmd中运行的方法。

安装:

  • MinGW
  • Sublime Text 3

MinGW安装配置:

MinGW是Minimalist GNU on Windows的首字母缩写,安装后就可以使用很多的GNU工具。GNU(GNU’s Not Unix)是linux中的一个著名的项目,包含了gcc\g++\gdb等工具。也就是说,安装MinGw后,我们就可以使用gcc和g++命令了。

由于官网下载方式需要网络安装,经过尝试最终还是由于网络原因安装失败,最终妥协后使用了网络下载的解压版MinGW

下载地址:MinGW百度云网盘下载

解压后,将MinGW文件夹放到C盘根目录,也就是“C:\MinGW\”。
此时我们还不能方便的在cmd中使用类似于“gcc 源文件名 -o 可执行文件名”的命令,我们需要在系统中配置环境变量。

右键计算机->属性->高级系统设置->环境变量
添加“C:\MinGW\bin”到“Path”

注意:Windows环境变量的修改不会立即生效,需要重启Windows。


Sublime Text 3配置:

Sublime Text 3无疑是众多码农的最爱,但Sublime Text 3只是一款编辑器,在C代码开发中,如果可以用Sublime Text 3调用gcc来完成编译运行,无疑是最好不过了。

在Sublime Text 3 中选择tool –> Build System –> New Build System,复制粘贴以下代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
{
"working_dir": "$file_path",
"cmd": "gcc -Wall -fexec-charset=GBK \"$file_name\" -o \"$file_base_name\"",
"file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
"selector": "source.c",
"variants":
[
{
"name": "Run",
"shell_cmd": "gcc -Wall -fexec-charset=GBK \"$file\" -o \"$file_base_name\" && start cmd /c \"\"${file_path}/${file_base_name}\" & pause\""
}
]
}

需要注意的是,在gcc编译参数中,加入了“-Wall”和“-fexec-charset=GBK”,“-Wall”参数是打开常用的警告,“-fexec-charset=GBK”参数则是解决中文乱码问题,由于Sublime Text 3中文件默认编码格式是utf-8 ,而windows中的命令行默认编码格式是GBK 。所以代码中出现中文时运行会乱码。加入“-fexec-charset=GBK”选项后,代码中的字符串按照GBK编码,就和CMD窗口保持一致,便不会发生中文乱码问题。

但是加入这个选项后,如果要编译的不是utf-8 ,而是GBK ,必须还要加入-finput-charset=GBK 选项来制定源代码的编码格式,否则会提示错误,而加入这个选项后编译utf-8又会乱码,所以建议在Sublime Text中全部使用UTF-8编码格式。

按Ctrl+S保存,会自动打开user目录(Sublime Text 3\Packages\User),修改文件名为 C.sublime-build,保存在此目录。
这时候,可以在Tools -> Build System下看到刚才新建的C了,选中后就可以使用了。
Build System中除了选择具体的编译系统,还可以选择第一个:Automatic 自动选择,会根据打开的文件后缀自动选择。

完成

配置完成后,使用Ctrl+B和Ctrl+shift+B便可以编译运行了。

技术参考文章:http://www.yalewoo.com/sublime_text_3_gcc.html

在Windows下,我们还可以使用Dev C++来完成C语言代码,效果不错。看个人爱好。