成都网站建设设计

将想法与焦点和您一起共享

MinGW&NppExec&Notepad++构建编译C/C++环境

本环境适合初学者,以避免臃肿的VS...很喜欢这种简洁的模式

10年积累的网站建设、成都网站设计经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先网站设计后付款的网站建设流程,更有晋源免费网站建设让你可以放心的选择与我们合作。


C程序示例

/* example C  Program*/
#include 
void main()
{
        printf("This is a c program.\n");
}

保存为new.c,位置“E:\myselfFuture\mySrc\”

1、下载(参考附件)

MinGW 下载地址:http://mingw.org/ 或点击 Downloads 直接在sourceforge下载

Looking for the latest version? Download mingw-get-setup.exe (86.5 kB) 

下载后按照默认位置按照(C:\MinGW\以便配置环境变量),安装过程中会联网下载组件,尽量避免使用***,会延迟。目测需要3-5分钟。安装后组件库视个人情况添加,建议将推荐组件安装即可。


下载notepad++最新版,百度官网,安装后设为默认文本编辑器!

下载NppExec插件(https://sourceforge.net/projects/npp-plugins/files/NppExec/),解压后放置notepad++安装目录(..Notepad++\plugins\)

2、配置环境变量

两种方式:效果一样

①、我的电脑-属性-高级系统设置--环境变量-系统变量Path--添加 C:\MinGW\bin\

②、Ctrl+R运行注册表编辑器regedit,找到[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment]目录,修改字符串值“Path"的值,在最后加上“;C:\MinGW\bin\”(不带引号)


3、重启电脑

打开DOS命令行工具,在任意目录下使用gcc、g++、gdb等MinGW内含工具。(如输入“gcc --help”可查看使用说明)


4、notepad++设置

①按F5,输入框

CMD /K CD /D "$(CURRENT_DIRECTORY)" && gcc -ffreestanding -std=gnu99 -Wall -g3 -O0 -o "E:\myselfFuture\mySrc\$(NAME_PART).exe" "$(FILE_NAME)" & PAUSE & EXIT

然后保存为“编译/Compile”,设置快捷键为F9。(假设输出程序的目录为E:\myselfFuture\mySrc\,需要自定义且真实存在,下略。)

②再次输入

CMD /K CD /D "E:\myselfFuture\mySrc\" && "$(NAME_PART).exe" & PAUSE & EXIT

保存为“运行程序/Run”,设置快捷键为Ctrl+F9。

③再次输入框

CMD /K CD /D "E:\myselfFuture\mySrc\" && gdb "$(NAME_PART).exe" & EXIT

保存为“调试/Debug”,设置快捷键为F10。

④再次输入框

CMD /KCD /D "E:\myselfFuture\mySrc\" && objdump -SlzDeg -M intel"$(NAME_PART).exe">"$(NAME_PART).s" && "$(NAME_PART).s" & EXIT

保存为“反汇编/Disassemble”,设置快捷键为Ctrl+F10。

以上快捷键都在运行页签下。

其中“$(NAME_PART)”是指当前编辑文件的文件名,“$(FULL_CURRENT_PATH)”代表当前操作文件的完整路径并包括文件名和后缀名。 

配置完成,我们开始测试下:

编辑保存后用notepad打开“new.c”,按“F9”编译,关闭CMD界面,按“Ctrl+F9”运行显示

This is a c program.

******************************************************************************************************

接下来都是折腾环节...

我们发现如上的编译运行都是CMD界面显示,那有木有在notepad++界面的过程演示?

有...

******************************************************************************************************

按F6或者选择菜单:Plugins->NppExec->Execute...输入

CMD /K CD /D "$(CURRENT_DIRECTORY)" && gcc -ffreestanding -std=gnu99 -Wall -g3 -O0 -o "E:\myselfFuture\mySrc\$(NAME_PART).exe" "$(FILE_NAME)" & PAUSE & EXIT

点击save,保存为“编译/Compile”

此时如果点击“OK”,会弹出 Console如下:

CMD /KCD /D "E:\myselfFuture\mySrc" && gcc -ffreestanding-std=gnu99 -Wall -g3 -O0 -o "E:\myselfFuture\mySrc\new.exe""new.c" & PAUSE & EXIT
Processstarted >>>
请按任意键继续. . .

也就是说命令执行的过程此时有了记录;

点击Console 界面,执行“Ctrl+C”结束编译;

再次F6,输入

CMD /K CD /D "E:\myselfFuture\mySrc\" && "$(NAME_PART).exe" & PAUSE & EXIT

点击save,保存为“运行程序/Run”

此时如果点击“OK”,会弹出 Console 如下:

CMD /KCD /D "E:\myselfFuture\mySrc\" && "new.exe" &PAUSE & EXIT
Processstarted >>>
This isa c program.
请按任意键继续. . .

点击Console 界面,执行“Ctrl+C”结束编译;


再次F6,输入

CMD /K CD /D "E:\myselfFuture\mySrc\" && gdb "$(NAME_PART).exe" & EXIT

点击save,保存为“调试/Debug”

此时如果点击“OK”,会弹出 Console 如下:

CMD /K CD /D "E:\output\" && gdb "new.exe" & EXIT
Process started >>>
GNU gdb (GDB) 7.6.1
Copyright (C) 2013 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later 
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "mingw32".
For bug reporting instructions, please see:
...
Reading symbols from E:\output\new.exe...done.
(gdb)

点击Console 界面,执行“Ctrl+C”结束编译;


这些快捷键怎么办???

1.将调试、编译、运行命令添加到宏菜单(Macros)下:

打开菜单:Plugins->NppExec->Advanced Options:

将Associated script下的“编译/Compile”、“运行程序/Run”、“调试/Debug” 添加进去,同时选中:加入到宏子菜单place to the macros sebmenu。技巧是每次改写脚本名称都改对应name,这样就能都添加进去了,而不是modify.

2.重启notepad++

3.在“设置”->“管理快捷键”中,从“Plugin Commands”中找到这几项并设置快捷键,具体可以自己设置,只要和系统原始不冲突即可,也可以使用“F9”、“Ctrl+F9”等。

最终效果,会在notepad++宏页签生成多个快捷键。后续每次生成.c都可以直接调用快捷键编译运行。

(完)

其它notepad++插件(https://sourceforge.net/projects/npp-plugins/files/)

插件介绍(http://www.open-open.com/lib/view/open1349680556072.html)

本文参考了以下资料,对原作者表示感谢!

http://blog.csdn.net/tangweide/article/details/7071103

http://cutecoot.iteye.com/blog/2004492

附件:http://down.51cto.com/data/2368126

网站名称:MinGW&NppExec&Notepad++构建编译C/C++环境
分享网址:http://chengdu.cdxwcx.cn/article/ghcijd.html