gcc安装教程(windows版本)

—最好的C/C++编译器,没有之一

windows下的gcc有两个版本mingw和cygwin,二选一就好

已学会C++,做工程,建议用mingw

用cygwin编译后的二进制码在别人机器上用不了,因为其他人的机器没有cygwin1.dll(安装cygwin的时候会安装,提供POSIX api和windows api之间的函数转换)

学习C++,建议用cygwin

cygwin完整模拟了linux的运行环境,包括终端、bash、gcc、gdb、make等等,是一套完整的解决方案(mingw还需要自己配置最小linux环境,msys)

安装mingw

注意!安装mingw必须搭配msys(如果安装cygwin,则不需要),推荐mingw64+msys1

mingw(32位)

http://sourceforge.net/projects/mingw/files/latest/download?source=files

mingw(64位)

http://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win32/Personal%20Builds/mingw-builds/installer/mingw-w64-install.exe/download

32位配置图

64位配置图

安装MSYS(运行在windows上的小型linux环境)

msys1

http://downloads.sourceforge.net/mingw/MSYS-1.0.11.exe(官方)

http://sourceforge.net/projects/mingwbuilds/files/external-binary-packages/(第三方)

msys2(32位,64位二选一,需要linux命令,会linux的可以考虑,pacman包管理器)

msys2(32位)

http://sourceforge.net/projects/msys2/files/Base/i686/

msys2(64位)

http://sourceforge.net/projects/msys2/files/Base/x86_64/

安装cygwin

cygwin(32位)

http://cygwin.com/setup-x86.exe

cygwin(64位)

http://cygwin.com/setup-x86_64.exe

安装Devel目录下的 gcc-core gcc-g++ gdb make

安装IDE

Ide有很多Code::Blocks、eclipse、netbeans等等,个人推荐netbeans

安装JDK(java开发工具)

http://www.oracle.com/technetwork/java/javase/downloads/index.html

安装netbeans(开源IDE,下载C/C++版本)

https://netbeans.org/downloads/

配置系统环境变量PATH

我的电脑->属性->高级系统设置->环境变量->系统变量->Path->编辑->变量值

如果是mingw+msys

则把mingw的bin目录,msys的bin目录加入环境变量,用分号隔开

如果是cygwin

则把cygwin的bin目录,加入环境变量,用分号隔开

例子:我在Path原有的字符串后面加入下面字符串

;D:\now\GCC\msys\1.0\bin;D:\now\GCC\mingw64\bin

注:

mingw64配置图详解

有5个选项

Version(gcc版本),选择最高的

Architecture(架构),32位cpu选择i686,64位cpu选择x86_64

Threads(线程模式),如果使用posix api 选择posix,如果使用win32 api 选择win32

Exception(异常处理机制,有三种)

SJLJ (setjmp/longjmp)

优点,兼容性好,32位或64位架构都可以使用

缺点,速度较慢

DWARF (DW2, dwarf-2)

优点,速度比SJLJ快

缺点,只能用于32位架构,且有bug!(尽量别用!!!)

SEH (zero overhead exception)

优点,速度快

缺点,只能用于64位架构

Build revision(编译版本),选择最高的

http://blog.163.com/dabing1688@126/blog/static/169574450201411217271639

gcc安装教程(学习Linux编程只需安装cygwin)的更多相关文章

  1. ArcGIS 10.1 for Server安装教程系列—— Linux下的单机安装

    http://www.oschina.net/question/565065_81231      因为Linux具有稳定,功能强大等特性,因此常常被用来做为企业内部的服务器,我们的很多用户也是将Ar ...

  2. windows下ipython的tab补全,只需安装pyreadline即可.

    运行ipython提示缺失模块 在windows下安装readline失败. 根据提示访问 https://urllib3.readthedocs.org/en/latest/security.htm ...

  3. VirtualBox扩展包安装教程|VirtualBox扩展增强包怎么安装

    VirtualBox是一款功能强大的免费虚拟机软件,一般我们安装VirtualBox后要安装扩展增强包,VirtualBox扩展包包含USB2.0和USB3.0控制等支持功能,如果没有装,在使用过程中 ...

  4. [转]Oracle 11g 基于CentOS7静默安装教程(无图形界面,远程安装) --有部份地方有问题

    Oracle 11g 基于CentOS7静默安装教程(无图形界面,远程安装) [转载]原文地址:http://canonind.blog.51cto.com/8239025/1883066 一.安装前 ...

  5. CentOS 6.8 安装TigerVNC 实现 Linux 远程桌面并安装火狐浏览器

    CentOS 6.8 安装TigerVNC 实现 Linux 远程桌面并安装火狐浏览器 vnc客户端地址:https://files.cnblogs.com/files/MYSQLZOUQI/vnc- ...

  6. OpenAcc社区版安装教程(Linux版)(更新版)

    官方安装过程如下图所示 1.安装前 下载OpenAcc社区版 1,目前为止的最新版,平台是Linux,选择Linux x86-64. 我的服务器系统是CentOs 下载地址链接:https://www ...

  7. 人声提取工具Spleeter安装教程(linux)

    在安装之前,要确保运行Spleeter的计算机系统是64位,Spleeter不支持32位的系统.如何查看? 因为在linux环境下安装spleeter相对要简单很多,这篇教程先以Ubuntu20.04 ...

  8. kali linux安装教程及VMware Tool工具的安装

    一.Kali Linux在VMware下的安装 kali系统的简介 1.Kali Kali Linux是基于 Debian 的 Linux发行版,设计用于数字取证和渗透测试的操作系统.由Offensi ...

  9. 大数据学习——Linux上常用软件安装

    4.1 Linux系统软件安装方式 Linux上的软件安装有以下几种常见方式: 1.二进制发布包 软件已经针对具体平台编译打包发布,只要解压,修改配置即可 2.RPM发布包 软件已经按照redhat的 ...

随机推荐

  1. C++ 中的异或操作^

    好好的利用异或能够产生奇妙的效果. 异或运算的性质: 不论什么一个数字异或它自己都等于0.也就是说.假设我们从头到尾依次异或数组中的每个数字,那么终于的结果刚好是那个仅仅出现一次的数字.由于那些出现两 ...

  2. logback--How do I configure an AsyncAppender with code? 转载

    原文地址:https://github.com/tony19/logback-android/issues/54 Please provide an example of how to configu ...

  3. 硬件——nrf51822第一篇,GPIO的使用

    未完,待续...... 本实现是基于一个开发箱,包括:综合应用开发系统主板XT-EDU-AK   1套: 手持终端系统 XT-EDU-HK 1套: GPIO操作 工程: 这是一个关于流水灯的程序: 我 ...

  4. 芯片TPS76030、TPS76032、TPS76033、TPS76038、TPS76050 电源芯片

    下图是从网上摘出来的图片:TPS76033 它的作用就是改变电压: 输入电压:3.5V到16V       通过芯片的处理后     输出电压:3.3V 要学会看图,从中提取有用的信息 再看一个数据手 ...

  5. Maven学习总结(16)——深入理解maven生命周期和插件

    在项目里用了快一年的maven了,最近突然发现maven项目在eclipse中build时非常慢,因为经常用clean install命令来build项目,也没有管那么多,但最近实在受不了乌龟一样的b ...

  6. v-if和updated钩子结合使用 渲染echart图表

    项目需求是这样的,用户可以自定选择echart 曲线图 是横向还是竖向显示.我的做法是 写了一个横向的echart图表,也写了一个竖向的echart图表,然后两者共用存在store里的图表数据,就能实 ...

  7. vue指令概览

    原文 简书原文:https://www.jianshu.com/p/5fd47b7422fd 大纲 1.什么是vue指令 2.向指令中传入参数 3.指令中带入修饰符 4.指令的缩写 5.常见的vue指 ...

  8. 【例题5-9 UVA - 1592】Database

    [链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 枚举不同的列是哪两个列,然后枚举行. 把那一行的这两列的字符接在一起,然后用map判重. 为了防止逐个比较字符. 可以一开始先把字符 ...

  9. LoaderManager使用具体解释(一)---没有Loader之前的世界

    来源: http://www.androiddesignpatterns.com/2012/07/loaders-and-loadermanager-background.html 感谢作者Alex ...

  10. echart报表插件使用笔记(二)--按月统计

    按月统计注冊人数 java类: package com.spring.controller; import java.io.IOException; import java.sql.Connectio ...