博主学生狗一只,之前一直进行.net开发,用惯了微软的那一套。C#上手容易,开发起来简单,但是正如前辈们所说的,它隐藏了太多底层的东西,惯坏了我,导致快毕业了有些东西一无所知。同时自己想写点简单的算法的时候,真切的感受到了vs的臃肿,再者就是移植不是很方便。于是准备找一款轻量级的ide,找来找去接触到了用一些编辑器自己配置自己的ide,开始使用了一下vim,但是实在是不喜欢那个界面的感觉,最后还是决定用notepad++来搭建一套c++的编译调试环境,同时学习下相关知识,转型c++开发,投入自由软件的怀抱。

首先安装MinGW,设置环境变量:

  1. 右键单击计算机,选择属性。

  2.单击左边的高级系统设置,选择最下面的环境变量。

  

  3.在系统变量下找到Path,点击编辑,在所有路径最后的”;”后添加D:\MinGW\bin (该路径为你MinGW的安装路径不一定是D盘)

其次,打开Notepad++,单击插件->Plugin Manager->Show Plugin Manager,在Available选项卡下双击downloading list,找到Nppexec插件,安装。重启Notepad++。

  1. 插件->NppExec->Show console diag。会在Notepad++下面显示控制台。

  

  

  编译调试运行神马的都需要控制台~否则乃需要重新开个cmd,那实在是很boring~

  接下来设置编译,调试和运行的宏

  1. 插件->NppExec->Execute,选择<temporary script>,输入

    

    a)g++ $(FULL_CURRENT_PATH) -g -o $(CURRENT_DIRECTORY)\$(NAME_PART).exe

    b)点击Save,输入compile(名字随意)

    c)输入$(CURRENT_DIRECTORY)\$(NAME_PART).exe

    d)点击Save,输入Run

    e)输入gdb $(CURRENT_DIRECTORY)\$(NAME_PART).exe

    f)点击Save,输入GDB

    

  1. 插件->NppExec->Advanced Options

  

    a) 选择Assicuated script下选项,分别add,Compile,Run,GDB

    b) 选择Place to the Macros submenu

    b) 点击OK

  2.宏选项菜单下即可看到新建的这三个宏。

  3.设置菜单,管理快捷键,选择plugin commands,设置你喜欢的快捷键

一个可以编译调试的c++的轻量级ide就搭建好了!!!!撒花!

几个问题:

  1. 网上不少教程在设置编译宏的时候前面都加了cmd /c 或者cmd/k,但是我去掉了因为我发现需要重复编译的时候会出现问题,NppExec的Console不是cmd,按照我的猜测这个console是根据里面的指令字符串调用的CreateProcess(),所以一些cmd下的命令需要先启动cmd。但是g++和gdb都添加到了系统变量的Path下,所以可以直接g++或者gdb。
  2. 其次$(FULL_CURRENT_PATH)我不理解是什么,$()是Notepad++定义的宏,FULL_CURRENT_PATH是软件的参数,具体请戳         http://www.ebeta.org/post/98.html

折腾了2天终于搞定,转型成功的第一步!

Notepad++配置c++编译环境的更多相关文章

  1. Notepad++ 配置java编译环境

    仅限于学习java或小的java程序使用.正常写代码还是eclipse吧 ---------------------分割线----------------------------- 1.配置JDK环境 ...

  2. 为 Sublime Text 3059 配置 PHP 编译环境

    关于  Sublime Text 3059 的安装及汉化 请参看 http://www.xiumu.org/note/sublime-text-3.shtml 为 sublime Text 配置 PH ...

  3. 【转】ubuntu下安装eclipse以及配置python编译环境

    原文网址:http://blog.csdn.net/wangpengwei2/article/details/17580589 一.安装eclipse 1.从http://www.eclipse.or ...

  4. Notepad++配置Python运行环境

    转自:http://www.cnblogs.com/zhcncn/p/3969419.html Notepad++配置Python开发环境   1. 安装Python 1 下载 我选择了32位的2.7 ...

  5. 应用 EditPlus 配置 Java 编译环境

    此文全文摘抄自: http://jingyan.baidu.com/album/37bce2be3ceef61002f3a208.html?picindex=7,谢啦 应用成功: EditPlus(文 ...

  6. Sublime Text3 配置Python3编译环境

    Sublime Text3 配置Python编译环境 进入Sublime Text3 ,然后选择菜单:工具(T)==>编译系统(U)==>新编译系统... 把上面的代码换成如下代码: &q ...

  7. Editplus配置java编译环境

    EditPlus配置java编译环境 第一步:检测自己是否已经有jdk 1.win+r,输入cmd,打开控制台 2.控制台下输入javac出现类似的画面,代表jdk已经成功安装 第二步:打开Editp ...

  8. Notepad++配置Python开发环境

    1. 安装Python 1 下载 我选择了32位的2.7版本.https://www.python.org/ftp/python/2.7.8/python-2.7.8.msi 2. 安装 安装的时候可 ...

  9. Ubuntu配置Android编译环境

    1.Ubuntu安装 VMware安装ubuntu之后,安装Vmware tools: 1.安装完ubuntu后,VMware Workstation菜单:虚拟机-->安装 Vmware Too ...

随机推荐

  1. opencv-python教程学习系列4-opencv绘图函数

    前言 opencv-python教程学习系列记录学习python-opencv过程的点滴,本文主要介绍opencv绘图函数,坚持学习,共同进步. 系列教程参照OpenCV-Python中文教程: 系统 ...

  2. IDEA中遇到One of the two will be used. Which one is undefined.

    某次启动idea的时候看到控制台提示如下错误 : objc[]: Class JavaLaunchHelper is implemented .0_131.jdk/Contents/Home/bin/ ...

  3. HTML第二课——css

    请关注公众号:自动化测试实战 先给大家提个建议,就是用sublime编辑器来编写.用其他的也无所谓,我只是建议,因为这个会帮你自动补全很多代码. css概念 css叫层叠样式表.意思就是一层一层的叠加 ...

  4. HDU5373 The shortest problem (YY)

    http://acm.hdu.edu.cn/showproblem.php?pid=5373 YY题,模拟下计算过程就好了,计算中并不要保存实际数(这个数会非常大),只要保存到目前为止的数字位上的和 ...

  5. oracle 以及 sql server mysql 空值默认值修改

    在SQL Server Oracle MySQL当数据库中查出某值为NULL怎么办? 1.MSSQL: ISNULL() 语法 ISNULL ( check_expression , replacem ...

  6. android 图片解码显示流程

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/jingxia2008/article/details/32327699 问题来源 android 能 ...

  7. 使用OPRT库来实现局域网视频实时传输

    转载,侵删 4.代码设计 目的:使用OPRT库来实现局域网视频实时传输 参考samle_venc.c进行ortp开发 4.1.程序流程如下 step1:定义变量,VPSS,VENC,零散变量 step ...

  8. 常见MQ流行度比较

    MQ的流行度跟它的特性和应用场景密切相关,站在当下来看,kafka最火,rabbitmq用的也很多,ActiveMQ作为经典mq选择用它入门的也不少.

  9. ActiveMQ生产者和消费者优化策略

    一.生产者优化策略  默认情况下,ActiveMQ服务端认为生产者端发送的是PERSISTENT Message.所以如果要发送NON_PERSISTENT Message,那么生产者端就要明确指定. ...

  10. java中String对象的存储位置

    public class Test { public static void main(String args[]) { String s1 = "Java"; String s2 ...