一开始CLion没有识别成功是因为我在蓝色部分添加的地址为:
C:\Program Files\mingw-w64\x86_64-8.1.0-posix-seh-rt_v6-rev0\mingw64\bin
其实不然,应该是这样:
C:\Program Files\mingw-w64\x86_64-8.1.0-posix-seh-rt_v6-rev0\mingw64
以下内容转自:MinGW-w64安装教程——著名C/C++编译器GCC的Windows版本
本文主要讲述如何安装 C语言 编译器——MinGW-w64,特点是文章附有完整详细的实际安装过程截图,文字反而起说明提示作用。
编写本文的原因始于我的一个观点:图片可以比文字传达更多的信息,也能让其他人更容易理解作者的意图及思想。因此,我将安装 MinGW-w64 的过程和步骤,编写成了这篇以图片为主的教程,为了让看到这篇文章的任何人,都可以很容易按照图片所示正确安装 MinGW-w64。
我希望写出一篇即使是⑨也可以看懂的 MinGW-w64 安装教程。
一、什么是 MinGW-w64 ?
MinGW 的全称是:Minimalist GNU on Windows 。它实际上是将经典的开源 C语言 编译器 GCC 移植到了 Windows 平台下,并且包含了 Win32API ,因此可以将源代码编译为可在 Windows 中运行的可执行程序。而且还可以使用一些 Windows 不具备的,Linux平台下的开发工具。一句话来概括:MinGW 就是 GCC 的 Windows 版本 。
以上是 MinGW 的介绍,MinGW-w64 与 MinGW 的区别在于 MinGW 只能编译生成32位可执行程序,而 MinGW-w64 则可以编译生成 64位 或 32位 可执行程序。
正因为如此,MinGW 现已被 MinGW-w64 所取代,且 MinGW 也早已停止了更新,内置的 GCC 停滞在了 4.8.1 版本,而 MinGW-w64 内置的 GCC 则更新到了 6.2.0 版本。
二、为什么使用 MinGW-w64 ?
1. MinGW-w64 是开源软件,可以免费使用。
2. MinGW-w64 由一个活跃的开源社区在持续维护,因此不会过时。
3. MinGW-w64 支持最新的 C语言 标准。
4. MinGW-w64 使用 Windows 的C语言运行库,因此编译出的程序不需要第三方 DLL ,可以直接在 Windows 下运行。
5. 那些著名的开源 IDE 实际只是将 MinGW-w64 封装了起来,使它拥有友好的图形化界面,简化了操作,但内部核心仍然是 MinGW-w64。
MinGW-w64 是稳定可靠的、持续更新的 C/C++ 编译器,使用它可以免去很多麻烦,不用担心跟不上时代,也不用担心编译器本身有bug,可以放心的去编写程序。
三、MinGW-w64 适合做什么?
对于熟悉 MinGW-w64 的高手而言,它可以编译任何 C语言 程序。但对于一般人来说,MinGW-w64 太过简陋,连图形用户界面都没有。这让习惯使用鼠标的人,感到很痛苦。虽然也可以通过一些配置,让 MinGW-w64 拥有图形用户界面,但那个过程非常麻烦。
除此之外,编译复杂的程序时,还需要你会编写 Makefile ,否则只能一个文件一个文件的编译,可想而知会多么辛苦。
但对于初学 C语言 的人来说,MinGW-w64 是正合适的编译器,至少黑色的命令提示符界面很有编程的气氛,感觉很酷。
在刚开始学 C语言 时,所有代码通常都写在一个文件中,只要输入几个简单的命令,就能用 MinGW-w64 编译成可执行文件。虽然 VS2015 等编译器,只要点击下鼠标就可以完成编译,但它会自动生成一大堆工程文件,让初学者摸不着头脑。而 MinGW-w64 则只会生成一个可执行文件。
如果对 MinGW-w64 和 VS2015 等编译器进行一下形容,那么 MinGW-w64 是手动的,而 VS2015 等编译器则是自动的。因此 MinGW-w64 的编译过程更加直观容易理解,也比较适合C语言学习。
总而言之,对于一般人来说,MinGW-w64 适合学习 C语言 时使用,真正工作还是用 VS2015 更好。当然如果您是在 Linux 下工作,那么Code::Blocks可能是一个选择,不过最大的可能是您必须习惯使用 GCC 来编译程序。
四、下载和安装 MinGW-w64
在开始安装之前,请先确认您满足以下几个条件。
1.您的电脑已经连接到网络。
2.您的电脑硬盘有500MB的剩余空间。
3.您现在有充足的时间。(受您当前网速的影响,安装过程可能会花费10几分钟或1个小时以上的时间。)
如果您确认,您满足了上述条件,那么就可以开始安装 MinGW-w64 了。
注意:教程中的图片都是实际安装时的原比例截图,如果您看不清图片中的提示语,可以将图片放大,不会影响清晰度。想要观看大图,只需点击图片,就会跳转到原始尺寸的图片页面中。如果前面的方法失效,您仍然可以通过浏览器放大页面的功能,放大图片,例如在 Chrome 浏览器下,您可以按住 Ctrl 键,然后滚动鼠标滚轮,即可放大页面。
1.MinGW-w64官方网站首页(http://mingw-w64.org/)
说明:MinGW-w64 官方网站的地址是:http://mingw-w64.org ,首页样式如上图所示。
操作:点击红框中的“Downloads”超链接,进入 MinGW-w64 下载详情页面。
说明:这是 MinGW-w64 的下载详情页面。首先看到一个标题为 Pre-built toolchains and packages 的列表,这里面是包含 MinGW-w64 及特定工具的整合包。我们这个教程只安装 MinGW-w64 ,所以只需下载 MinGW-w64 即可。
操作:点击红框中的“SourceForge”超链接,就会进入 SourceForge 中的 MinGW-w64 下载页面。
3.SourceForge 中的 MinGW-w64 下载页面
说明:MinGW-w64 的代码和可执行文件被托管存储在 SourceForge 上,在这个页面上就可以直接下载 MinGW-w64 了。MinGW-w64 是非常复杂的,编译器大多都是如此,为了适应各种操作系统,它们的组件会存在各种不同的版本,以适应不同的环境。所以,我们直接下载 MinGW-w64 的安装程序,它会按照我们的需要,自动下载适合的组件,并将它们组织在一起。
操作:点击红框中的“Download mingw-w64-install.exe”超链接,将会下载这个 MinGW-w64 自动安装的程序。
说明:5秒钟之后,浏览器会自动下载 mingw-w64-install.exe 。
操作:只需等待。
注意:如果浏览器没有自动下载,则可以点击黄框中的“direct link”超链接,手动下载。如果下载速度非常慢,可以点击绿框中的“mirror”超链接,选择一个离自己近的镜像网站,可能会获得较高(无法保证)的下载速度。
说明:如果你的浏览器是 chrome ,那么在浏览器下部,会出现这样一个下载标签。
操作:只需等待。
说明:这就是 MinGW-w64 的安装程序。它本质上是一个下载程序,会根据我们之后的一些设置,选择性的下载相应的组件,并将它们组织在一起。所以,运行前要确定网络通畅,而且你有足够的时间,因为根据你的网速,它可能需要花费一定的时间来下载。
操作:用鼠标双击运行 mingw-w64-install.exe 。
注意:如果出现无法运行,或者安装出错,你可以右键点击它,并在弹出窗口中选择“以管理员身份运行”选项,重新运行 mingw-w64-install.exe ,基本可以解决大部分问题。
说明:欢迎使用 MinGW-w64 在线安装程序。
操作:点击红框中的 “Next” 按钮,将会进入下一步安装步骤。
说明:这里程序正在链接服务器,以便获取存储在仓库中的 MinGW-w64 的文件明细。
操作:只需等待。
说明:在这个界面,你可以根据所要搭建的开发环境,选择不同的选项,从而下载所需的组件。
操作:选择 Version、Architecture、Threads、Exception、Build revision 下拉列表中适当的选项,接下来将会详细介绍这些选项。
说明:Version 指的是 gcc 的版本,如果没有特殊的需求,一般选择最高的版本号即可。
操作:在这个版本中,最高版本是 6.2.0 ,选中它即可。
说明:Architecture 是指电脑系统是 32位 还是 64位,根据你的电脑系统做出对应选择。
操作:我的电脑系统是 64位 的,所以我选择了 x86_64,如果你是 32位 系统,则选择 i686 即可。
说明:这个世界上只有两种操作系统,符合 posix 协议的,和 Windows 。如这个笑话所说的,如果你想要开发 Windows 程序,需要选择 win32 ,而开发 Linux、Unix、Mac OS 等其他操作系统下的程序,则需要选择 posix 。
操作:我只开发在 Windows 下运行的程序,所以选择了 win32 。
说明:异常处理在开发中非常重要,你在开发的过程中,大部分的时间会耗在处理各种异常情况上。如果你之前选择了 64位,则这里有两个异常处理模型供你选择,seh 是新发明的,而 sjlj 则是古老的。seh 性能比较好,但不支持 32位。 sjlj 稳定性好,支持 32位。
操作:我这里选择了 seh 。
说明:选择了 32位 后,则可以用 dwarf 和 sjlj 两种异常处理模型。同样的,dwarf 的性能要优于 sjlj ,可以它不支持 64位 。
操作:建议选择 dwarf 。
说明:暂时没弄明白是做什么的。(知道的人请留言)
操作:选择默认选项。
说明:绿框中就是我的 MinGW-w64 安装配置单,gcc 是 6.2.0 版本,系统架构是 64位,接口协议是 win32,异常处理模型是 seh,Build revision 是 1 。
操作:点击红框中的“Next”按钮,进入下一个步骤。
说明:在这里选择 MinGW-w64 将要安装到哪个目录中去。安装程序默认会将 MinGW-w64 安装在 C盘 ,而在 Windows 操作系统中 C盘 是系统盘,操作系统会被安装在这个盘里,而按照一般的习惯,我们尽量不把应用软件安装载系统盘里。因为以前的电脑使用的是机械硬盘,而机械硬盘频繁读写会降低效率,所以尽量将操作系统与应用软件放在不同的硬盘分区下。当然,现在的电脑大部分都配备了固态硬盘(SSD),而且通常作为系统盘来使用,因此已经没有读写效率的问题了。所以如果你还在用机械键盘,就将 MinGW-w64 放到其他非系统盘里,如果使用固态硬盘,则可以放在安装程序提示的默认位置,或其他地方均可。
操作:点击红框中的“Browse”按钮,以便更改 MinGW-w64 的安装位置。
说明:点开绿框中的“此电脑”,就可以打开一个树状列表,然后找到你想要将 MinGW-w64 安装到的位置。你也可以点击黄框中的“新建文件夹”按钮,创建一个新的目录。
操作:选择好安装的目录后,点击红框中的“确定”按钮,之后安装程序将把 MinGW-w64 安装到那里。
说明:界面中的 Space available 指的是你选择的目录,所在的硬盘分区的剩余空间,而 MinGW-w64 至少会占用 500 MB 的空间。Create shortcuts in Start Menu 是说在开始菜单创建 MinGW-w64 的快捷方式,一般默认勾选即可。
操作:确认安装目录没问题后,点击红框中的“Next”按钮,开始正式安装 MinGW-w64 。
说明:安装程序开始连接服务器,并从中下载 MinGW-w64 的本体文件,视乎你的网络环境,下载所需的时间会有所不同,如果你有其他事情要做,可以点击“Cancel”按钮,取消本次安装。
操作:只需等待。
说明:MinGW-w64 已经下载完成,我们可以在之前选择的安装目录下,找到它的各种组件文件。
操作:点击红框中的“Next”按钮,继续下一个步骤。
说明:MinGW-w64 的安装程序已经完成了它的使命,但 MinGW-w64 还没有安装完成,之后我们还需要进行一些配置,才能正常使用它编译源代码。
操作:点击红框中的“Finish”按钮,将关闭 MinGW-w64 安装程序。