notepad tdm gcc++怎么用gcc同时编译多个源文件

1,工具: Notepad++:
MinGW: 2,安装notepad++ 3,解压MinGW并放在C盘根目录 4,计算机-&属性-&高级系统设置-&高级-&环境变量
4,1,增加系统变量C_INCLUDE_PATH,变量值C:\MinGW\inlude 4,2,增加系统变量EQ_LIBRARY_PATH,变量值C:\MinGW\lib 5,找到PATH变量,在变量值后面增加;C:\MinGW\C:\MinGW\C:\MinGW\libexec\gcc\mingw32\4.6.2
这里如果有部分重复了,只要添加没有的即可。 6,然后CMD运行测试:gcc -v看结果,如果现实gcc版本号,就成功了 7,notepad++& ,运行,然后添加以下两行代码:
编译代码:cmd /k gcc -Wall -o "$(CURRENT_DIRECTORY)\$(NAME_PART).exe" "$(FULL_CURRENT_PATH)" & PAUSE & EXIT 运行代码:cmd /k "$(CURRENT_DIRECTORY)\$(NAME_PART).exe" & PAUSE & EXIT 8,特别要注意:编译和运行之前一定要保存当前的notepad++的代码
阅读(...) 评论()GCC编译器的编译规则 - 简书
GCC编译器的编译规则
在使用Gcc编译器的时候,我们必须给出一系列必要的调用参数和文件名称。GCC编译器的调用参数大约有100多个,其中多数参数我们可能根本就用不到,这里只介绍其中最基本、最常用的参数。
让notepad++调用gccGCC最基本的用法是∶gcc [options] [filenames]
其中options就是编译器所需要的参数,filenames给出相关的文件名称。
-c,只编译,不连接成为可执行文件,编译器只是由输入的.c等源代码文件生成.o为后缀的目标文件,通常用于编译不包含主程序的子程序文件。
-o output_filename,确定输出文件的名称为output_filename,同时这个名称不能和源文件同名。如果不给出这个选项,gcc就给出预设的可执行文件a.out。
-g,产生符号调试工具(GNU的gdb)所必要的符号资讯,要想对源代码进行调试,我们就必须加入这个选项。
-O,对程序进行优化编译、连接,采用这个选项,整个源代码会在编译、连接过程中进行优化处理,这样产生的可执行文件的执行效率可以提高,但是,编译、连接的速度就相应地要慢一些。
-O2,比-O更好的优化编译、连接,当然整个编译、连接过程会更慢。
-Idirname,将dirname所指出的目录加入到程序头文件目录列表中,是在预编译过程中使用的参数。C程序中的头文件包含两种情况∶
A)#include &myinc.h&
B)#include “myinc.h”
其中,A类使用尖括号(& &),B类使用双引号(“ ”)。对于A类,预处理程序cpp在系统预设包含文件目录(如/usr/include)中搜寻相应的文件,而B类,预处理程序在目标文件的文件夹内搜索相应文件。
C中的预编译宏定义
作者: infobillows 来源:网络 在将一个C源程序转换为可执行程序的过程中, 编译预处理是最初的步骤. 这一步骤是由预处理器(preprocessor)来完成的. 在源流程序被编译器处理之前, 预处理器首先对源程序中的&宏...
2016年国庆假期终于把此书过完,整理笔记和体会于此。 关于书名 书名源于俄罗斯的演员斯坦尼斯拉夫斯基创作的《演员的自我修养》,作者为了写这本书前前后后修改了三十年之久,临终前才同意不在修改,拿去出版。使用这个书名一方面书单内容的确不是介绍一门新的编程语言或是展示一些实用的...
《鸟哥的Linux私房菜》笔记 提到Linux,就不得不提GNU和GPL授权所产生的自由软件(free software)与开放源码(Open Source)等。 我们将通过Linux操作系统里面的执行文件来理解什么是可执行的程序,以及了解什么是编译程序。另外,与程序息息相...
一、温故而知新 1. 内存不够怎么办 内存简单分配策略的问题地址空间不隔离内存使用效率低程序运行的地址不确定 关于隔离 : 分为 虚拟地址空间 和 物理地址空间 分段 : 把一段程序所需要的内存空间大小映射到某个地址空间 分页 : 把地址空间人为地等分成固定大小的页,每一页...
Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智能路由,微代理,控制总线)。分布式系统的协调导致了样板模式, 使用Spring Cloud开发人员可以快速地支持实现这些模式的服务和应用程序。他们将在任何分布式...
01 今晚 和几个朋友上街走走 发现这个城市最热闹的永远是那么几条街 最好吃的也只有那几家店 毕竟再好的东西见多了也会厌倦 几个人在街上漫无目的的在街上走着 百无聊赖 我说要不去篮球场吧 大家同意了 去的时候已经晚上九点了 篮球场上却还...
古历的虎年眼看着就要过去了,中雪的夜晚,我独自静静地躺在床上,思绪又回味起这一年的境况,眼角不自然地挂上了泪花..... 那是春节后吧,严敏来电话约我去了古城。我就在接电话后,对老伴撒谎说:“城里的养羊协会叫咱去捏,说是有啥胺的事。”老婆一听就说:“那你去,穿暖和些,我听广...
这几天,就一起记录了…
只要有你,就是全世界 外面温度很高,办公室开着冷气,所以我感觉好冷好冷。在公司跟同事对了一上午的账都没对得清楚,所以我又很烦躁。怎么办,这两种感受放在一起好难过。但每次遇到这样的状态我都会勉励自己:你不是在单纯的为自己战斗,你还有他!对,我还有你,有你,我便拥有全世界。 午...
自古以来,手镯就是女性最为青睐的首饰之一。古代的女子喜爱手镯,不仅是日常的装扮之物,也是寄情之物。因此也有了“何以致契阔?绕腕双跳脱”这样的说法。 女人的手镯到底应该怎么选呢?其实作为一种兼具古典与流行特色的首饰,手镯的佩戴是不挑人的,有底蕴显气质,随着现在首饰工艺的发展,...Notepad++配合MinGW直接编译运行C/C++代码的窍门
1、在电脑中配置MinGW环境。具体参见我的另一篇分享经验:MinGW在Windows环境下的配置:
http://jingyan.baidu.com/article/6b9a1ca2b0bf90.html
2、下载并安装NppExec插件。
1.插件---&Plugin Manager---&show
Plugin Manager---&安装NppExec插件。
2.或者直接下载NppExec插件,将NppExec.dll放置到plugins文件夹下。
查看NppExec插件是否安装成功。看到如图所指的信息就说明安装成功。
3、下载Notepad++并安装Function List插件。
1.插件---&Plugin Manager---&show
Plugin Manager---&安装Function List插件。
2.或者直接下载Function List插件,将FunctionList.dll放置到plugins文件夹下,将C++.flb,FunctionListRules.xml,Gmod Lua.bmp放到plugins\Config文件夹下。
查看Function List插件是否安装成功。看到如图所指的信息就说明安装成功。
4、在Notepad++中配置MinGW的C编译信息,按下F6出现出现输入框,参数安装图中数据填写如下:
cmd /c gcc
-g -W -Wall "$(CURRENT_DIRECTORY)\$(FILE_NAME)" -o "$(CURRENT_DIRECTORY)\$(NAME_PART).exe"
echo ==========编译成功后开始运行==========
"$(CURRENT_DIRECTORY)\$(NAME_part).exe"
(我命名为GCC)
如图所示:
5、在Notepad++中配置MinGW的C++编译信息,按下F6出现出现输入框,参数安装图中数据填写如下:
cmd /c g++
-g -W -Wall "$(CURRENT_DIRECTORY)\$(FILE_NAME)" -o "$(CURRENT_DIRECTORY)\$(NAME_PART).exe"
echo ==========编译成功后开始运行==========
"$(CURRENT_DIRECTORY)\$(NAME_part).exe"
(我命名为G++)
如图所示:
6、在Notepad++中依次点击:插件---&NppExec---&Advanced Options,配置信息如图所示:
7、NppExec配置成功之后,在Notepad++中依次点击:宏---&管理快捷键---&Plugin commands,配置快捷键,配置信息如图所示:
8、快捷键配置成功之后,会在“宏”下拉菜单最下方看到配置结果,如图所示:
9、接下来就需要打开Notepad++对Function List进行设置了。Plugins-&Function List-&Language Parsing Rules。然后,在语言列表中选择C/C++,然后在“Bitmap List”后面打上勾,浏览到plugins/config目录,并选择C++.flb,于是乎就万事俱备,只欠东风了。
10、测试配置是否可以运行,这里以HelloWorld.c进行测试。
没有更多推荐了,
加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!【图片】新人第一贴:用notepad++与gcc for windows搭建简易IDE。【c语言吧】_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:584,234贴子:
新人第一贴:用notepad++与gcc for windows搭建简易IDE。收藏
那啥,以前在吧里的精品贴里看到过类似的,不过你们也进来看看嘛。在我没发完之前请勿水贴,非要水请楼中楼谢谢,否则俺会炸楼的。还有就是一楼不给看
c语言,博为峰IT培训免费试听,0元入学,现在更有多重优惠,仅限今天!博为峰,真正的为年轻人服务的企业,14年间培训15万余名it工程师,成绩斐然!
第一步:当然是安装需要安装的了,我用的是h防ttp://吞on.com/上下载的gcc for windows当然其他编译器也是可以的,我用的带有gdb调试功能。文本编辑器用的是notepad++开源免费插件多哦,他的官网是h防ttp://吞pad-plus-plus.org/下面搭建IED也是用这个编辑器搭建的。gcc for windows我是64位系统安装的是64位。别告诉我你们不会下载和安装啊。
接下来就自然就是环境变量的设置了,其实很简单了啦就俩,不过建议先“备份”好系统变量的设置,不然某些东西因为操作的时候手贱被和谐了就不好了。下面上打开环境变量设置页面的图点环境变量就好,别告诉我你不会点。
接下来就是设置环境变量了先在系统变量里新建俩我不相信你们连新建都找不到这里的路径取决于你的安装路径,也就是你的编译器中的lib文件夹和include文件夹在哪里就填什么这两个是需要新建的还两个是需要添加的,不过lz亲测装我给的那个是会自动添加的,没有的话请手动设置注意分号哦!这样就设置好了接下来测试下有没有设置正确这样就是正确了哦
就是文本编辑器的设置了,默认主题真心难看的吓人,不得已俺鼓捣了下。不喜欢鼓捣的可以跳,设置一键编译,运行哪里去看。下面上设置图
设置好主题就差不多了,觉得字体小的可以自行调整,就在那一栏上,不过默认要注意修改的是全局字体还是单一类型的字体。下面就是设置运行命令一键编译和运行了
编译的时候输入cmd /c "gcc -Wall -std=c11 -g -o$(CURRENT_DIRECTORY)$(NAME_PART) $(FULL_CURRENT_PATH) "含义是在源码文件目录(/c)生成同名exe可执行文件(-0 ***.exe ***.c),并开启一般性警告编译(-Wall注意W需要大写),开启gdb调试功能(-g),以C11标准进行编译(-std=c11需要C99就把C11改为C99就好)接着点击保存,填写运行命令名称和快捷键注意如果和预设快捷键重叠需要改变预设快捷键才可使用。在此处可以设置。接下来同样的步骤,运行命令 cmd /c$(CURRENT_DIRECTORY)/$(NAME_PART).exe "$(FULL_CURRENT_PATH)" &PAUSE & EXIT和刚才一样保存为运行C就好了
接下来就写段代码测试下吧编译成功!成功运行!到这里教程就结束了,对于想要进行gdb调试的请自行研究怎么一键打开对文件的调试吧,这里附上一张cmd下直接命令操作的截图以供参考教程结束。欢迎来水。
mark   ✄┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
顺便插一个gdb调试的示例好了,GDB讲的话得讲很长....就不讲了一个调试示例源程序:tst.c代码:1 #include &stdio.h&23 int func(int n)4 {5
int sum=0,i;6
for(i=1; i&=n; i++)7
}1011 }121314 int main( void )15 {1617
long result = 0;18
for(i=1; i&=100; i++)19
result +=21
printf("result[1-100] = %d", result );24
printf("result[1-250] = %d", func(250) );25 } 编译生成执行文件:(Linux下)root@linux:/home/benben/test# gcc -g tst.c -o tst使用GDB调试:代码:root@linux:/home/benben/test# gdb tst &---------- 启动GDBGNU gdb 5.1.1Copyright 2002 Free Software Foundation, Inc.GDB is free software, covered by the GNU General Public License, and you arewelcome to change it and/or distribute copies of it under certain conditions.Type "show copying" to see the conditions.There is absolutely no warranty for GDB. Type "show warranty" for details.This GDB was configured as "i386-suse-linux"...(gdb) l &-------------------- l命令相当于list,从第一行开始例出原码。1 #include &stdio.h&23 int func(int n)4 {5 int sum=0,i;6 for(i=1; i&=n; i++)7 {8 sum+=i;9 }10(gdb) &-------------------- 直接回车表示,重复上一次命令11 }121314 int main( void )15 {1617 long result = 0;18 for(i=1; i&=100; i++)19 {20 result +=(gdb) break 16 &-------------------- 设置断点,在源程序第16行处。Breakpoint 1 at 0x8048496: file tst.c, line 16.(gdb) break func &-------------------- 设置断点,在函数func()入口处。Breakpoint 2 at 0x8048456: file tst.c, line 5.(gdb) info break &-------------------- 查看断点信息。Num Type Disp Enb Address What1 breakpoint keep y 0x in main at tst.c:162 breakpoint keep y 0x in func at tst.c:5(gdb) r &--------------------- 运行程序,run命令简写Starting program: /home/benben/test/tst Breakpoint 1, main () at tst.c:17 &---------- 在断点处停住。17 long result = 0;(gdb) n &--------------------- 单条语句执行,next命令简写。18 for(i=1; i&=100; i++)(gdb) n20 result +=(gdb) n18 for(i=1; i&=100; i++)(gdb) n20 result +=(gdb) c &--------------------- 继续运行程序,continue命令简写。Continuing.result[1-100] = 5050 &----------程序输出。 Breakpoint 2, func (n=250) at tst.c:55 int sum=0,i;(gdb) n6 for(i=1; i&=n; i++)(gdb) p i &--------------------- 打印变量i的值,print命令简写。$1 = (gdb) n8 sum+=i;(gdb) n6 for(i=1; i&=n; i++)(gdb) p sum$2 = 1(gdb) n8 sum+=i;(gdb) p i$3 = 2(gdb) n6 for(i=1; i&=n; i++)(gdb) p sum$4 = 3(gdb) bt &--------------------- 查看函数堆栈。#0 func (n=250) at tst.c:5#1 0x in main () at tst.c:24#2 0x400409ed in __libc_start_main () from /lib/libc.so.6(gdb) finish &--------------------- 退出函数。Run till exit from #0 func (n=250) at tst.c:50x in main () at tst.c:2424 printf("result[1-250] = %d", func(250) );Value returned is $6 = 31375(gdb) c &--------------------- 继续运行。Continuing.result[1-250] = 31375 &----------程序输出。 Program exited with code 027. &--------程序退出,调试结束。(gdb) q &--------------------- 退出gdb。root@linux:/home/benben/test#
为什么mingw里的 gcc 还是 4.8.1的害我还去更新了半天
果然单机了么
VIM才是王道
把菜单什么的去掉 看上去就好多了
mark新人求带
Lydium:电子信息的学校推荐教材谭浩强的,但是老师教学用书是黑书,计算机专业用的是学校自己编的
偶尔用这个查看代码,主要是打开快。
好老的新人
喜闻乐见看恒河0.0        不要998!不要888! 只要十五字 卤煮给你带回家 既可以么么哒 又可以啪啪啪~ 
越看越深奥
终于忍心将环境变量重新设置了一遍,从此告别了用云IDE的日子
新人求带,初学C语言。
软件确实不错,界面看得就爽
本不想再顶上去,不过发现个诡异的问题,原因是嘛,懒得想了......如果有尝试的童鞋走完全部步骤以后发现这类问题,且源码正确编译能通过的话,可以试试编辑notepad++安装目录下的shortcuts.xml文件将内容替换为下面的&NotepadPlus&
&InternalCommands&
&Shortcut id="43006" Ctrl="no" Alt="yes" Shift="no" Key="113" /&
&Shortcut id="47000" Ctrl="no" Alt="yes" Shift="no" Key="112" /&
&/InternalCommands&
&Macro name="Trim Trailing and save" Ctrl="no" Alt="yes" Shift="yes" Key="83"&
&Action type="2" message="0" wParam="42024" lParam="0" sParam="" /&
&Action type="2" message="0" wParam="41006" lParam="0" sParam="" /&
&UserDefinedCommands&
&Command name="Launch in Firefox" Ctrl="yes" Alt="yes" Shift="yes" Key="88"&firefox &$(FULL_CURRENT_PATH)&&/Command&
&Command name="Launch in IE" Ctrl="yes" Alt="yes" Shift="yes" Key="73"&iexplore &$(FULL_CURRENT_PATH)&&/Command&
&Command name="Launch in Chrome" Ctrl="yes" Alt="yes" Shift="yes" Key="82"&chrome &$(FULL_CURRENT_PATH)&&/Command&
&Command name="Launch in Safari" Ctrl="yes" Alt="yes" Shift="yes" Key="70"&safari &$(FULL_CURRENT_PATH)&&/Command&
&Command name="Wikipedia Search" Ctrl="no" Alt="yes" Shift="no" Key="114"&(CURRENT_WORD)&/Command&
&Command name="Open file" Ctrl="no" Alt="yes" Shift="no" Key="116"&$(NPP_DIRECTORY)\notepad++.exe $(CURRENT_WORD)&/Command&
&Command name="Open in another instance" Ctrl="no" Alt="yes" Shift="no" Key="117"&$(NPP_DIRECTORY)\notepad++.exe $(CURRENT_WORD) -nosession -multiInst&/Command&
&Command name="Send via Outlook" Ctrl="yes" Alt="yes" Shift="yes" Key="79"&outlook /a &$(FULL_CURRENT_PATH)&&/Command&
&Command name="编译C" Ctrl="no" Alt="no" Shift="no" Key="112"&cmd /k gcc -g -Wall -std=c11 -o $(FULL_CURRENT_PATH).exe &$(FULL_CURRENT_PATH)& & PAUSE & EXIT&/Command&
&Command name="运行C" Ctrl="no" Alt="no" Shift="no" Key="113"&cmd /k &$(FULL_CURRENT_PATH).exe& & PAUSE & EXIT&/Command&
&/UserDefinedCommands&
&PluginCommands /&
&ScintillaKeys /&&/NotepadPlus&鉴于度娘毁代码我贴上一张图.......其实和初始文件只相差2行代码....这么做以后有个问题是进行编译运行的文件只能在某盘的根目录下(个人习惯如此放置)懒得调整了...
拜师可以吗? 楼主?
好帖,来瞧瞧   --Powered By MF studio
登录百度帐号

我要回帖

更多关于 notepad 反编译 的文章

 

随机推荐