在WINDOWS环境下配置C语言编译环境

在WINDOWS环境下配置C语言编译环境

注:本篇文章同样适用于 C++

为什么需要配置

要想让自己写出来的 C 语言源代码程序 ( *.c 源代码文件 ) 转换为可以直接运行的二进制程序 (*.exe 可执行文件 ) , 从实质上解释, 就是我们需要一个转换器用来将 C 这门人能够理解的 级语言转换为机器能够识别执行的 级语言。这个转换的过程,我们称之为编译

从专业角度来分析,这里的转换器我们用一个专有名词 编译器 来称呼它。

在 Linux 平台上,C语言的编译器是 GCCGNU Compiler Collection),利用 Linux 自带的包管理器我们很快就能安装上然后使用(几乎是安装即用)(甚至 Linux 其本身就是用 C 写的),然后我们便可以使用例如 Vim 之类的编辑器编写代码,并马上可以调用 GCC 进行编译调试( 目标格式 *. out )。

GCC 与 Linux 均包含在 GNU (一套理想且自由的操作系统)项目内,他们俩的关系就像哥哥与弟弟一样亲密。

而在Windows平台上,这个编译器是 MinGWMinimalist GNU for Windows),又称 “ mingw32 ”,是将 GCC 编译器和 GNU Binutils(一种分析二进制文件的工具) 移植到 Win32 平台下的产物,包括一系列头文件( Win32API )、库 和 可执行文件。它可以产生32位的Windows可执行文件( *.exe ),但是 MinGW 太老了,现在Windows平台大多是64位的,使用32位程序已经不能使电脑性能得到充分利用。但还好,我们还有 MinGW-w64 ,这个项目最初是从原 MinGW 产生的分支,后来分离出去独立发展了。MinGW-w64 可以产生 32位及64位 Windows 可执行文件,可满足用户对支持64位的要求,同时其支持的平台也大大扩展,从只能运行在 Windows 平台的 MinGW,到能在Win32、Win64、Linux32、Linux64等主流平台上都有版本可用的 MinGW-w64

GNU-logo

如何配置 MinGW-w64

下载二进制文件

MinGW-w64 将自己所有的源代码以及自身编译后的二进制文件都发布在了 Sourceforge (全球最大的开放源代码软件开发平台和仓库)。

你可以点击这里来进入它的版本归档界面→Sourceforge

你应该会看到如下界面

MinGW-file

( 截至我写这篇文章时(2020-06-30),目前 MinGW-w64 GCC 最新版本为 v8.1.0 )

我们可以在介绍里看到 MGW 的多个历史版本,还有它支持的各类处理器平台版本。

我们可以看到版本表里最新 v8.1.0 版本的下载选项多达8项,一般的我们下载 x86_64-posix-sjlj 这个版本就行了。

v

download-mgw

(点击名称即可开始下载)

idm-download

exe-zip


若你具有很强的动手能力,你可以下载发布页里的压缩包,他们是 MinGW-w64 的源代码,你可以试着亲自把他们编译为二进制文件。

你可以点击这里来进入它的版本发布界面→Sourceforge

MinGW-release

MGW-Source

由于SF服务器在国外,有时下载体验会十分糟糕。

有梯子的小伙伴请用梯子下载。

当然你也可以找国内靠谱的软件源进行下载。

安装并配置系统变量

安装

压缩包下载后,我们还需要选一个合适的位置将它解压,而这个位置就相当于是安装位置。

zip

(压缩包详情)

unzip

(解压文件到某位置)

注:为便于记忆,我们可以给解压目标文件夹改个短一点的名字,例如 MinGW64

upzip-befor

(解压之后)

配置系统变量

解压之后,我们打开目录下的 bin 子文件夹,我们会看见一大堆没图标的 .exe 可执行文件,可能会让你头皮发麻,但是不用紧张。我们此时只需要记住当前这个 bin 文件夹的路径。

bin

bin-source

然后我们需要对系统变量进行配置。

  • 按下键盘上的【徽标键】+【Pause】组合键,打开系统属性窗口。
  • 单击左侧选项栏中的 高级系统设置
  • 点击 环境变量 按钮。
  • 系统变量 一栏中选择 Path 项,选择编辑。
  • 点击 新建 ,将刚才复制的 bin 目录粘贴进去,点击确定。

path-1

path-2

我们给系统添加环境变量就类似于地图软件给我们预先规划好路线,等到出发时直接照路线走就行了,而不至于出发时临时到处去问路。

验证安装

当你看到这时,你的安装配置都应该已经完成了。

现在我们还需要进行最后一步,验证安装。

(简单点就是看你到底装没装上)

  • 按键盘上的【徽标键】+【X】打开快捷菜单。

  • 选择 Windows PowerShell 选项

  • 在出现的 PowerShell 命令行窗口中 输入

    gcc -v
    
  • 回车,观察现象。

yz-1

yz-2

(出现上图的信息说明一切顺利)

杂谈

GCC (GNU Compiler Collection,GNU编译器套件)是由GNU开发的编程语言译器。GNU编译器套件包括C、C++、 Objective-C、 Fortran、Java、Ada和Go语言前端,也包括了这些语言的库(如libstdc++,libgcj等。)

——百科词条-GCC

GCC 并不单纯只支持 C 语言的编译,它还支持其他几种编程语言,例如JavaC++

还记得那个令人头皮发麻的 bin 文件夹吗。

那里边的 exe 便是这些语言的编译前端。

例如里边的:

eg

  • 这个 g++.exeC++ 的编译器,它不仅可以编译 C++ 源代码,还可以编译 C 源代码。
  • gcc.exe 此 gcc 非彼 GCC ,这个文件是 C 语言的编译器,但它不可以编辑 C++ 源代码。
原文地址:https://www.cnblogs.com/mikelucis/p/13225851.html