如何使用notepad++搭配MinGW配置编译C/C++
最经开始学C++了,平时学习不喜欢用IDE,一直以来都喜欢使用sublimetext写代码。所以在网上找了一下如何配置sublimetext编译C/C++。不过简单配置之后,只有输出,要想进行输出操作,还要再折腾一番。sublimetext平时做web开发的时候专用。至于vim和emacs太高端,非我等屌丝随随便便就可以的,所以我先试着将notepad++折腾一下。于是乎开始google之。
折腾了好久额,网上的教程实在是。。。有的还没说完就没了。又一次明白了:很多事情还是要靠自己啊!网上的东西真的只是可以参考一下而已。一番折腾之后,终于配置成功了,现在我就总结一下一个自认为比较完整的方法吧。
1、先要安装编译器
notepad++只是一个文本编辑器,本身没有编译C/C++的功能。所以要想先配置,就要先装上一个编译器。我是用的是MinGW(但是它不只是一个编译器这么简单,可以简单地理解成是一个开发工具包,我们只是利用了其中的一些开发工具)。可以到这个链接http://gd.tuwien.ac.at/gnu/mingw/MinGW-3.0.0-1.exe下载一个MinGW-2.0.0-3.exe(我配置的时候使用的版本是这个)。
2、设置环境变量
什么是环境变量,我也不清楚,不懂的可以自己去查一下资料,回头我也去脑补。我们先设置环境变量。
(以下的环境变量设置过程网上很多,我参考了http://blog.csdn.net/firefoxbug/article/details/6724876)
在(系统属性-->高级-->环境变量-->系统变量 中)(以下目录都根据自己的电脑MinGW所在位置不同而改变)
- 在PATH的值中加入“D:\MinGW\bin”(如果没有就新建一个PATH)。如果PATH中还有其他内容,需要用英文状态下分号进行分割。这是寻找gcc编译器的路径。(这一步中PATH的值根据你的MinGW安装的路径设定,要能够访问的gcc编译器,也就是MInGW安装目录里面的bin文件夹)
- 新建LIBRARY_PATH变量,在其值中加入“D:\MinGW\lib”。这是标准库存放的路径。
- 新建C_INCLUDE_PATH变量,在其值中加入“D:\MinGW\include”。这是Include查找头文件的路径。
设置结束之后,在cmd控制台窗口下面,输入gcc -v。若已经成功安装好,会显示gcc的版本信息。比如说我的:
3、设置notepad++
环境变量设置成功之后,接下来我们就是设置notepad++,为其加上编译,运行,甚至调试的功能,我是添加了编译和运行两个。
打开notepad++,选择菜单栏的“运行》运行”,或者直接按“F5”,可以看到如下:
然后再一次输入下列命令
编译:
cmd /k g++.exe -g -W -Wall -o $(CURRENT_DIRECTORY)\$(NAME_PART).exe "$(FULL_CURRENT_PATH)" & PAUSE & EXIT
然后点击“保存”,并自定义快捷键。
运行:
cmd /k $(CURRENT_DIRECTORY)\$(NAME_PART).exe "$(FULL_CURRENT_PATH)" & PAUSE & EXIT
然后点击“保存”,并自定义快捷键。
(命令设置参考文章:http://www.cnblogs.com/P_awl/archive/2010/01/29/1659305.html)
注意事项:
引号的使用是为了适用于文件名或者路径中带有空格的情况,一定不能省略。
& PAUSE 含义是命令运行后暂停等待键盘操作
& EXIT 含义是完成后退出运行窗口,回到notepad++
gcc的bin目录已经之前在系统环境变量中进行过设定,否则需要补全gcc命令的绝对路径。(很简单,将"g++.exe"换成"D:\MinGW\bin\g++.exe",还是要参照你安装的路径)
举个栗子:
现在来演示一下,编译
运行:
至此,配置过程已经结束。但是在用的过程中,在我的电脑上会有问题:如果你在程序中输入了中文,运行的时候会乱码,经过一番折腾发现,好像是文件不能使用UTF-8格式,否则无法通过编译。我的解决办法是,编码依旧使用ASNI,但是在编码字符集中选择中文》gb2312。不过还是有问题,等我发现了好的方法再补充上来,如果大家有好的办法,欢迎分享。
如果在编译过程中中文出现了乱码,我的解决办法是:在notepad++里面菜单栏中“设置》首选项》新建”,将编码改成gbk就可以了。如下图:
全文到此结束,有错误的地方欢迎指正