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

发布时间:2020-07-21 17:18:12 作者:尔与同愁
来源:网络 阅读:3930

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


C程序示例

/* example C  Program*/
#include <stdio.h>
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 <http://gnu.org/licenses/gpl.html>
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:
<http://www.gnu.org/software/gdb/bugs/>...
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
推荐阅读:
  1. python如何调用c++中ctype的list传数组或者返回数组
  2. 非程序员选择学习C++还是Python?

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

c++ exec notepad

上一篇:微信小程序如何实现上拉加载功能

下一篇:php、html出现中文乱码的解决方案

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》