写在前面

  近期沉迷Atom的颜值无法自拔,在github的光环下,Atom凭借自身良好的素质,获得了大量开发者的青睐。随之而来的就是丰富的插件库,在插件帮助下,它对各种编程语言都有相当好的支持。对与一个(伪)ACM选手来说,Atom没有自带的C/C++编译功能可以说是相当大的遗憾了。但是最后我还是选择向颜值低头,没有自带编译环境,那就创造编译环境。

  如果安装过程中遇到下载缓慢之类的问题的话,你的网络可能魔法和更多的科学。

  关于轻量化,我的理解是相对于vs这类大型IDE来说的,可以快速启动并开始使用的。在插件较多或者需要操作大文件的情况下,抑或机器配置不足等情况下,Atom表现也只能说是中规中矩。

  首发并更新于我的知乎专栏进击的菜鸟


Step1:安装Atom

  直接进官网,Atom官网,实时更新最新版,根据自己的电脑平台下载最新版本安装包。

  虽然写的代码都是英文的…但还是中文界面看起来舒服点,所以先替换一个中文界面:

Packages -
Setting view -
Install Packages/Themes
然后搜索simplified-chinese-menu
install
结束以后重启一下Atom进入中文界面

Step2:安装编译器

  在Atom插件库是没有编译环境的,所以在正式开始之前需要安装完整的编译环境,这个我选择MinGW,它是一个精简的编译器,使用安装都很方便,在MinGW官网可以直接下载最新版。官网有时候可能访问不顺畅,所以这里也留个百度网盘的地址。

链接: https://pan.baidu.com/s/1I3qbgjQhIiNPSxMyfzIvpw
提取码: idc7

  因为路径依赖问题,所以MinGW安装的目录里不能有空格,否则会无法正常运行。选择路径之后直接Install,进入安装流程。连续两波Continue之后就正式进入安装流程。

   选中mingw32-gcc-g++-bin,右键点击进入Mark for Instiallation,把C++的编译器勾选起来,随后Installation - Apply Changes - Apply,软件就开始自动下载更新内容。

  安装完成后,打开桌面此电脑 - 右键属性 - 左侧的高级系统设置 - 高级 - 环境变量

  随后双击系统变量中的Path,新建一条并根据自己的安装路径来设定,类似于..\MinGW\bin。完成后关掉所有窗口并重启电脑(程序员玄学——重启大法保平安)。

  命令行输入

gcc -v

  检验编译器是否成功安装,如下如所示则安装成功:

安装插件

  这样继续安装新的插件:

扩展 -
设置界面-
安装 插件/主题 -
安装

  搜索并安装gpp-compiler,安装以后再Atom编辑部分右键菜单就有编译运行的菜单了。

This Atom package allows you to compile and run C++ and C within the editor.

To compile C or C++, press F5 or right click the file in tree view and click Compile and Run.

To compile C or C++ and attach the GNU Debugger, press F6 or right click the file in tree view and click Compile and Debug.

  如果变异成功的话,会直接弹出运行的程序,如果是编译失败的话,会在编译的文件的目录下生成一个错误日志txt文件,在修改编译通过后会自动删除,在Atom右上角也有红色弹窗提示错误信息。

  可以参见官方文档了解更多具体内容:gpp-compiler​atom.io

Atom打造轻量化C/C++ IDE的更多相关文章

  1. 用Atom打造简单的java编译器以及对于可能出现的问题解答

    如何用Atom打造简单的javaIDE 自己一直比较喜欢Atom编辑器,前段时间给Atom配置好了C/C++的运行环境,自己心里还是感觉挺好的,最近在学习java ,偶然的机会让我看到了一篇文章,就是 ...

  2. 新上线!3D单模型轻量化硬核升级,G级数据轻松拿捏!

    "3D模型体量过大.面数过多.传输展示困难",用户面对这样的3D数据,一定不由得皱起眉头.更便捷.快速处理三维数据,是每个3D用户对高效工作的向往. 在老子云最新上线的单模型轻量化 ...

  3. 轻量化ViewControllers,读文章做的总结

    推荐一个网站 http://objccn.io/ 我这两天才开始看 获益匪浅 看了第一篇文章 <更轻量的View Controllers>感觉写的不错 感觉作者 原文地址 http://o ...

  4. Atom打造 c/c++编译环境(忙了一个上午)

    众所周知 Atom是一款非常酷炫的编辑器.因为它就像上古卷轴一样,玩家可以开发各种dlc补丁,实现自己想要的效果.所以Atom 可以被你改造成自己想要的东西,可以用来写算法竞赛题目,可以开发网页,可以 ...

  5. 轻量化卷积神经网络MobileNet论文详解(V1&V2)

    本文是 Google 团队在 MobileNet 基础上提出的 MobileNetV2,其同样是一个轻量化卷积神经网络.目标主要是在提升现有算法的精度的同时也提升速度,以便加速深度网络在移动端的应用.

  6. 基于WebGL/Threejs技术的BIM模型轻量化之图元合并

    伴随着互联网的发展,从桌面端走向Web端.移动端必然的趋势.互联网技术的兴起极大地改变了我们的娱乐.生活和生产方式.尤其是HTML5/WebGL技术的发展更是在各个行业内引起颠覆性的变化.随着WebG ...

  7. 铁大Facebook轻量化界面NABCD

    界面轻量化: N:满足了用户更快速.更直接.更方便寻求自己所要信息的需求,不被复杂界面以及各种广告所困扰. A:我们将会用Bootstrap工具包开发前端界面,Bootstrap是基于jQuery框架 ...

  8. 毕加索发布轻量化转化引擎及BIMSOP协作云平台

    一直以来,杂务缠身,博客都好久没有更新了,以后还是要继续坚持总结一下.希望能有时间坚持下去 :) 月初在国家会议中的智能展会上,我分享了毕加索公司近来的工作,即自行研发的轻量化转化云平台,以及以此为基 ...

  9. js便签笔记(14)——用nodejs搭建最简单、轻量化的http server

    1. 引言 前端程序猿主要关注的是页面,你可能根本就用不到.net,java,php等后台语言. 但是你制作出来的网页总要运行.总要测试吧?——那就免不了用到http server.我先前都是用vis ...

随机推荐

  1. C#类的成员(字段、属性、方法)

    前面定义的Person的类,里面的成员包括:字段.属性.方法.事件等,此外,前面说的嵌套类也是类的成员. a.类的成员为分:静态成员(static)和非静态成员 b.静态成员用static标识,不标识 ...

  2. Highest Price in Supply Chain (25)(DFS)(PAT甲级)

    #include<bits/stdc++.h>using namespace std;int fa;int degree[100007];vector<int>v[100007 ...

  3. PAT12-012【建最小堆】

    卧槽..没看清 值 还有负的.. PS: 注意他说是一个一个插入的,也就是插在完全二叉树的最末位置,然后向上更新. #include<bits/stdc++.h> using namesp ...

  4. MCP|LQD|Data-independent acquisition improves quantitative cross-linking mass spectrometry (DIA方法可提升交联质谱定量分析)

    文献名:Data-independent acquisition improves quantitative cross-linking mass spectrometry (DIA方法可提升定量交联 ...

  5. 说一说solr在tomcat,jetty上的运行和安装优缺点

    本文是我从别的文章中组合而成的,结合自己实际操作进行了修改. Solr是什么 Solr 是Apache下的一个顶级开源项目,采用Java开发,它是基于Lucene的全文搜索服务器.Solr提供了比Lu ...

  6. 明天找python工作,看看这几道Python面试题吧,Python面试题No14

    第1题: 如何解决验证码的问题,用什么模块,听过哪些人工打码平台? PIL.pytesser.tesseract模块 平台的话有:(打码平台特殊,不保证时效性) 云打码 挣码 斐斐打码 若快打码 超级 ...

  7. Vue里的nextTick方法

    官方解释: 在下次 DOM 更新循环结束之后执行延迟回调.在修改数据之后立即使用这个方法,获取更新后的 DOM. 自己总结: `Vue.nextTick(callback)`,当数据发生变化,更新后执 ...

  8. 7、python数据类型之集合set

    数据类型之集合setset 不允许重复的无序集合,不能通过下标取值,因为无序1.创建   创建空集合   s ={} 默认类型为字典,所以不是空集合,空集合如下   s = set()   s = { ...

  9. 同源策略与CORS跨域请求

    一.同源策略 1.简介 同源策略(Same origin policy)是一种约定,它是浏览器最核心也最基本的安全功能,如果缺少了同源策略,则浏览器的正常功能可能都会受到影响.可以说Web是构建在同源 ...

  10. py---------网络编程

    一.软件开发架构 我们了解的涉及到两个程序之间通讯的应用大致可以分为两种: 第一种是应用类:qq.微信.网盘.优酷这一类是属于需要安装的桌面应用 第二种是web类:比如百度.知乎.博客园等使用浏览器访 ...