欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Windows下MinGW安装GCC和G++超详细过程

程序员文章站 2022-05-01 15:34:13
...

MinGW安装GCC超详细过程


一、寻找安装MinGW方法

网上的内容乱七八糟,还是自己想办法好,本人试用两种方法,第一种方法,下载codeblocks(失败),第二种方法,从MinGW官网下载(成功)。

1. codablocks(失败)

下载路径http://www.codeblocks.org/downloads,安装教程:http://xinzhi.wenda.so.com/a/1541658150208115,安装完成目录大致如下图。Windows下MinGW安装GCC和G++超详细过程
将安装出来的codeblocks目录下的MinGW放在,某个盘符的目录下,建议C盘(C:\MinGW),然后设置环境变量,在系统变量中添加如下内容。

C_INCLUDEDE_PATH C:\MinGW\include

LIBRARY_PATH C:\MinGW\lib

以及在Path变量下添加

Path C:\MinGW\bin

在CMD中输入

gcc -v

结果大致如下。
Windows下MinGW安装GCC和G++超详细过程
但这只是表明在MinGW目录下有gcc.exe这个可执行文件,如果不配置好基本没用,在CMD中进入自己的C语言代码目录下,然后按照gcc 【C语言文件名.c】 - o【C语言文件名】,大致如下。
Windows下MinGW安装GCC和G++超详细过程
结果一般情况下都是失败,中间过程我已经忘了,我用的是第二种方法成功。

2. 官网(成功)

官网路径:​​http://www.mingw.org/,安装教程:http://xinzhi.wenda.so.com/a/1519378836611631
,安装进行到这个阶段就先停一下。Windows下MinGW安装GCC和G++超详细过程

二、正确的安装下载方法

建议先阅读官网主页左边这个部分的链接内容,直接阅读HOWTO Install the MinGW(GCC) Compiler Suite模块,可以直接帮助安装,如果实在担心出错,建议在此之前先读Getting Started模块,就是教你这个MinGW器怎么用,跟下载内容没多大关系。
Windows下MinGW安装GCC和G++超详细过程
按照官网教程如果想要利用这个MinGW安装器构造一个C语言编译器,需要如下基本内容。
Windows下MinGW安装GCC和G++超详细过程
那怎么完整获取这些内容呢?安装器也有些地方不完善,需要与这几个链接互补下载。安装器优先,因为一般版本比较新,然而有些时候有些文件很难下载下来,所以用链接下载。注意,如果安装器上不完整,不要只下载某一个(如dev),另一个(如dll)从链接上下载,这样会造成版本不同,严重的会造成你全部失败,要从头开始,所以只能选择一个下载方式。这里我把各个基本内容的文件下载方式列出来,。

  • binutils(bin,其他文件下载方式类似于此)
  1. 从安装器上下载,可以从中找到位置,从图看出中我是按从安装器下载的,版本是2.32-1。
    Windows下MinGW安装GCC和G++超详细过程
  2. 从链接上下载,点开链接会发现,跳出提示说文件不可获取,如下图所示。
    Windows下MinGW安装GCC和G++超详细过程
    但其实是可以下载的,只是他的后缀名是.lzma,但是.lzma格式是压缩文件,且需要二次解压,该资源下给出的是一次解压之后的文件,自然找不到.lzma文件。所以可以点开上图MinGW这个链接,依次点下去MinGW》Base》binutils》(选择最新版,这里最新版的是2.28)binutils-2.28》(出现一大堆文件,选择)binutils-2.28-1-mingw32-bin.tar.xz。.sig后缀名是数字签名文件,用来判断该文件是否完整,故而不用下载。
  • mingw-runtime(dev and dll,负责minGW在运行过程中的处理)
  1. 从安装器上下载。
  • Windows下MinGW安装GCC和G++超详细过程
  1. 从链接上下载,方式与上面类似。如图所示。Windows下MinGW安装GCC和G++超详细过程
  2. 如果没有会报错大致如下。
    Windows下MinGW安装GCC和G++超详细过程
  • w32api(上面没有说要下什么,其实只要下一个dev,因为只有一个dev)
  1. 从安装器上下载,Windows下MinGW安装GCC和G++超详细过程
  2. 从链接上下载。Windows下MinGW安装GCC和G++超详细过程
  • mpc(dll)
    Windows下MinGW安装GCC和G++超详细过程
  • mpfr(dll)
    Windows下MinGW安装GCC和G++超详细过程
  • gmp(dll)
    Windows下MinGW安装GCC和G++超详细过程
  • pthreads(dev and dll)
  1. 从安装器上下载,安装器上只有dev 还有一个 libpthreadc,由于不太清楚是不是我想要的,所以我没有下载,转从链接下载,注意,如果安装器上不完整,不要只下载某一个(如dev),另一个(如dll)从链接上下载,这样会造成版本不同,严重的会造成你全部失败,要从头开始。
  2. 从链接下载,这里有几个加了pre,几个没加pre,其实都一样。还是选择最新版,然而2.10版本没有,dev和dll,有几个GC,GCE不知道是否一样,所以我退一版本选择2.9.1,这里就有了。
  • iconv(dll,这个文件很重要,是很多其他网上提供的优化版本所缺失的,导致在CMD运行乱码)
    Windows下MinGW安装GCC和G++超详细过程
  • zlib(dll)
  1. 在安装器上下载,由于不知道,下载什么所以我都下载了,其实是只要下载dll,当然下载多了,没有影响。
    Windows下MinGW安装GCC和G++超详细过程
    Windows下MinGW安装GCC和G++超详细过程
  2. 在链接上下载发现只要下载一个dll。
  • gettext(dll)
  1. 从安装器上下载,一样我全部下载了下来,谁让你不说。
    Windows下MinGW安装GCC和G++超详细过程
  2. 从链接下载,发现还是只要下载dll。
  • gcc-core(bin and dev and dll)
  1. 从安装器下载,我在安装器上没找到,所以转到从链接上下载。
  2. 从链接下载,内容略。
    现在下载MinGW可用的其他语言模块,如下所示。Windows下MinGW安装GCC和G++超详细过程
    由于我后面还需要用C++所以,我补充下载了c++模块的内容,如果你不需要可以跳过。
  • gcc-c++(bin and dev and dll)
  1. 在安装器上下载,没找到。
  2. 在链接上下载,成功,略。
    这里需要补充几个后面需要的模块,如下图所示。
    Windows下MinGW安装GCC和G++超详细过程
    这几个模块只要下载前面四个就可以了。各位可以自己点开链接,下载。

三、整合下载内容

这里有从安装器上下载下来的内容,也有从链接下载下来的内容,那怎么办呢?
从安装器上下载下来的内容已经存在于你的MinGW目录下了,简单说就是不用你管了,需要你管的是,从链接下载下来的内容,将其全部解压,解压到下载的压缩文件目录下有非压缩文件的状态即可,然后全部拖到MinGW目录下,会自动排放,一般如果你是按照我上面的内容,是不会发生文件冲突的。
如果说发生文件冲突,也就是你的文件我已经有了,那你要好好想想,是否要将安装器上下载的内容进行移除,然后从链接上下载,或者不要覆盖,注意版本。

四、检测编译环境是否完整

如果不完整后面会有各种问题。

1. 检测gcc版本

Windows下MinGW安装GCC和G++超详细过程
gcc是我安装的版本。
Windows下MinGW安装GCC和G++超详细过程
g++也是我安装的版本。

2. 在CMD中运行.c文件,看是否报错

Windows下MinGW安装GCC和G++超详细过程
上面是由于我之前没有下载mingwrt也就是mingw-runtime,导致报错缺少文件crt2.0,而这文件是程序处理过程必须的文件,所以报错。
再次运行。
Windows下MinGW安装GCC和G++超详细过程
没有报错。

3. 在编辑器中运行,让CMD用gcc编译

如果你用的编辑器不需要在CMD中运行可能不需要这一步,看是否报错或乱码。
如果你提前在sublime中配置在CMD下编译.c文件,在sublime执行如下代码:

#include <stdio.h>
#include <stdlib.h>
int main()
{
	int n;
	printf("请输入:\n");
	scanf("%d",&n);
	printf("%d\n",n);
    return 0;
}

结果是:
Windows下MinGW安装GCC和G++超详细过程
没有乱码没有报错。

五、感想

没得塔西,没得塔西。