notpad++ 搭配 gcc

GCC 是 GNU 编译器套装的简称(GNU Compiler Collection),一套编程语言编译器,以 GPL 及 LGPL 许可证所发行的自由软件,也是 GNU 项目的关键部分,也是 GNU 工具链的主要组成部分之一。GCC(特别是其中的 C 语言编译器)也常被认为是跨平台编译器的事实标准。

由于 GCC 适用于 Linux/UNIX 系统,Windows 系统本身不支持 GCC,所以就有了 MinGW 的诞生,MinGW 是把 GNU 从 Linux/UNIX 到 Windows 的移植应用。

MinGW, a contraction of "Minimalist GNU for Windows", is a minimalist development environment for native Microsoft Windows applications.

这是 MinGW 的官方解释,MinGW 是「Minimalist GNU for Windows」的缩写,是非常简洁 Microsoft Windows 应用开发环境。由于 MinGW 只支持 32 位,现在 MinGW-W64 的主要维护者 Kai Tietz 因为工作需要他想 MinGW 提供扩充 x64 支持,但对方态度很不友好。于是愤而 fork 出来,这就是 MinGW-W64 的由来。

MinGW-W64 是同时支持 32 位和 64 位的。甚至还支持 32 位和 64 位的交叉编译(启用 multilib 支持的 MinGW 发行版例如 mingw-builds 可以用 -m32 或 -m64 指定)。

下载安装 MinGW-w64

MinGW-w64 下载地址。这里下载的是在线安装包,安装前能自己选择参数,安装过程需要联网。建议选择的参数如下图所示,之后一路 next 就行了。

开始的 i686,x86_64 好理解,代表适用的处理器架构,i686 代表是 32 位处理器,x86_64 则代表 64 位处理器。posix 则代表线程模式 (threading model),windows 下还有另一种线程模式 win32。i686 前缀的版本肯定可以编译 32 位程序,但是能否编译 64 位程序则取决于编译器版本所用的异常实现模型 seh,sjlj。

  • sjlj 适合 32/64 位程序 (但是它会带来轻微的性能损失, 在异常重的代码中有 15%)
  • seh 只能用于 64 位程序

通过离线安装包来安装 MinGW-w64

在线安装需要联网才有用,我还是喜欢下载离线安装包。下载后解压再添加环境变量就可以了。

MinGW 离线安装包下载地址

添加环境变量

按下图配置的是当前用户的环境变量,如果是要为所有用户配置环境变量就在系统变量中添加。

在命令提示符(cmd) 中分别输入 gcc,如下则说明安装成功

C:\Users\82665> gcc
gcc.exe: fatal error: no input files
compilation terminated.

nppExec 插件编译运行 gcc

下载 nppExec 插件,解压将文件拷贝到 Notepad++\plugins 下,重启 notepad++。

勾选「Show Console」、「No internal messages」、「Save all files on execute」、「Follow $(CURRENT_DIRECTORY)」。然后点击 Plugins->NppExec->Execute,输入脚本。

gcc $(FILE_NAME) -o $(NAME_PART).exe
./$(NAME_PART).exe

然后点击 save,名字为「run gcc」。

进入 NppExec->Advanced Options 里,然后在左下方 Associated script 选择我们之前的「run gcc」,Add/Modify 然后 OK。

配置快捷键

进入 Setting->Shortcut Mapper,在 Plugin commands 面板,双击填写快捷键。我们把上面的「run gcc」填写为 Ctrl+R。

然后去我们的程序中按 Ctrl+R 就会运行这个 C/C++ 文件,以上就是所有的步骤。

其中,$(FILE_NAME)$(NAME_PART) 都是 Notepad 的内置变量,上网搜搜还有类似的变量可以在脚本中使用。

参考文章

notpad++ 搭配 gcc的更多相关文章

  1. 有关 GCC 及 JNA 涉及动态库/共享库时处理库文件名的问题

    动态库尤其是共享库在 Linux 环境下普遍存在库文件名包含版本号的情况,比如 Linux 环境下经常会发现一个共享库的真实文件名是 libfoo.so.1.1.0,而同时会有多个指向该真实库文件的软 ...

  2. GNU Binutils简介及基本用法

    [时间:2017-06] [状态:Open] [关键词:GNU, binutils, as, ld, ar, 基础工具,linux,链接器,汇编器] 0 简介 GNU Binary Utilities ...

  3. Mac 下的 C++ 开发环境

    1. Xcode 创建 C++ 项目 Xcode (版本 4.6.3)默认支持创建 C++ 项目,步骤很简单:打开 Xcode,新建一个项目:在 OS X 中的 Application 中选择 Com ...

  4. C/C++编程可用的Linux自带工具

    GNU Binary Utilities或binutils是一整套的编程语言工具程序,用来处理许多格式的目标文件.当前的版本原本由在Cygnus Solutions的程序员以Binary File D ...

  5. 快速认识LinkIt 7697开发板

    LinkIt 7697是一款多功能且价格亲民的开发板,可用来连接网络或你的各项装置,同时提供Wi-Fi及蓝芽两种联机功能.此开发板采用MediaTek MT7697芯片,比起其他类似的Wi-Fi/蓝芽 ...

  6. 开发纯ndk程序之环境搭配

    安装ndk 从安卓官网下载,ndk,双击解压到当前文件夹.建议想装在那个文件夹便解压到那个文件夹,而且文件夹的路径中不要有空格,因为gcc编译的时候会把空格前后两个字符串作为两个文件夹来对待. 使用g ...

  7. 修改gcc/g++默认include路径

    修改gcc/g++默认include路径 转自:http://www.network-theory.co.uk/docs/gccintro/gccintro_23.htmlhttp://ilewen. ...

  8. windows系统下GCC的安装与配置

    刚开始看 C++ Primer,看到编译器的部分,自己搜了搜怎么搭建GCC,搜到以下内容,复制过来留个印象: windows系统下GCC的安装方法,以及一些环境变量的配置,如果对GCC不是很清楚,关于 ...

  9. gcc使用备忘

    本文为原创文章,转载请指明该文链接 Options Controling the kind of Output -x language 明确说明输入文件的编码语言,没有该选项的话, gcc 会根据输入 ...

随机推荐

  1. python 文件目录操作

    在Python程序中执行目录和文件的操作 Python内置的os模块可以直接调用操作系统提供的接口函数 Python交互式命令行 >>> import os>>> ...

  2. February 16 2017 Week 7 Thursday

    Other men live to eat, while I eat to live. 很多人为食而生存,而我为生存而食. Just the same, either you eat to live ...

  3. 自动备份软件 —— Syncovery 7.98s Pro/Enterprise

    SynCovery自动备份软件原名Super Flexible Synchronizer,是目前功能最为强大的实时自动备份工具,连FTP.WebDAV等全部支持!最近从V6开始改用比较好记.易懂的新名 ...

  4. CodeForces 91A Newspaper Headline

    题目链接:CodeForces - 91A  Newspaper Headline 官方题解: In this problem letters from s1 should be taken gree ...

  5. NGSQC toolkit

    一.NGSQCTooklit 使用 主要是去除dapter和低质量的碱基,并有统计结果 可以得到如下的结果 1,每个位置的碱基的平均质量 2,每个GC值对应的reads数 3,每个质量值对应的read ...

  6. PHP-------文件上传的实例

    文件上传的实例 一.上传头像 在注册时,要求用户上传头像,登陆主页面,显示用户信息时,头像也要显示出来. 例子: 注册页面: 图片存数据库时是text类型. <title>无标题文档< ...

  7. sendmail启动报错

    sendmail启动不了,报错如下: 解决方法: 在/etc/mail/sendmail.cf 配置文件中查找 Dj$w,并在此行下面增加这一行. Dj$w. 在/etc/hosts 增加一行 192 ...

  8. 阿里云修改主机名(以centOS为例)

    需要更改配置文件生效,修/etc/sysconfig/network里的 HOSTNAME=主机名(可自定义),重启生效. 如何修改? 1.[root@aliyunbaike ~]# cd /etc/ ...

  9. oracle database 9i/10g/11g 编程艺术 源代码下载

    背景 在找这本书的源码,搜到提供的都是需要C币下载的.比较固执(其实是穷). 在这本书的前言中提到源代码可以在 www.appress.com 上下载. 下面是该书在该网站上的链接: https:// ...

  10. Jquery 操作 select 的操作指南

    这里我们以一个简单的select作为原型来进行说明: <select> <option value="a1">香蕉1</option> < ...