在Windows下进行C/C++开发,可以使用Windows特有的MSVC系列工具和跨平台的GCC系列工具。其中,MSVC的安装较为简单:直接前往Visual Studio官网(https://visualstudio.microsoft.com/)下载安装Visual Studio即可。在Visual Studio Installer中,可以安装附带的其他工具(如CMake,vcpkg包管理器等)。
但是使用MSVC通常会出现以下问题:1. 基于MSVC编写的代码,为了充分利用MSVC和Windows的优化,需要编写强依赖于MSVC特性和Windows特性的代码,移植性差。2. Visual Studio本身上手难度较大,不适合新手入门,没有其他IDE如CLion好用。3. 对于配置相对较低的PC,如果在Windows上使用CLion+MSVC开发,则编译速度将会远慢于Linux下使用GCC,通常需要5~10秒才能编译完一个1000行代码的小项目,而Linux+GCC通常只需1~2秒,这对于调试开发来说及其不友好。因此,可以使用GCC的Windows版本:MinGW,在GCC不支持Windows的前提下,在Windows上获得类似GCC的体验。
本文将介绍MinGW以及其他C++开发工具如CMake,Ninja的Windows安装教程。
1.下载MSYS2
由于GCC不支持Windows,所以我们需要使用GCC的Windows移植版本MinGW。要安装MinGW,最简单的方式是使用MSYS2命令行。前往MSYS2官网:https://www.msys2.org/ 下载安装器并运行,按照指示安装即可。在安装过程中,建议保持默认安装路径(C:\msys64)不变,且创建快捷方式,方便后续使用。
2.安装工具链
安装完MSYS2后,可以在开始菜单中找到MSYS2的几个快捷方式:

对于Windows10,通常会出现在开始菜单顶部“最近添加”中。对于Windows11,可以直接在搜索框中搜索MSYS2。
打开MSYS2 UCRT64,之后,所有的操作都将在UCRT64中完成。
2.1:同步软件源
MSYS2终端模拟了Linux终端,并使用pacman包管理器管理所有通过MSYS2安装的软件。对于熟悉pacman的开发者,可以像在Arch Linux中一样使用pacman。
pacman -Syu
如果此命令用时过久,且发现网速过慢,可以考虑开启网络代理:
1.在MSYS2的安装路径(C:\msys64)下打开一个CMD命令行窗口,可以点击文件夹上方的路径框,直接输入cmd并回车。
2.设置代理环境变量,可以直接从代理软件中复制
set http_proxy=http://127.0.0.1:xxxx
set https_proxy=http://127.0.0.1:xxxx
将 xxxx 替换为实际的代理端口。
执行以上两条命令,并确认系统代理开启。此时,当前终端具有了代理环境,任何通过此终端启动的应用都将使用网络代理。
3.输入 usrt64.exe 打开MSYS2终端
4.重试pacman -Syu
2.2:安装MinGW,包括gcc和g++
pacman -S mingw-w64-x86_64-gcc
2.3:安装GDB调试器
pacman -S mingw-w64-x86_64-gdb
2.4:安装CMake
pacman -S mingw-w64-x86_64-cmake
2.5:安装Make
pacman -S mingw-w64-x86_64-make
2.6:安装Ninja
pacman -S mingw-w64-x86_64-ninja
2.7:验证安装
gcc --version
g++ --version
cmake --version
gdb --version
ninja --version
以上给出了所有常用工具的安装方式,选择性安装需要的即可。
3.更新工具
pacman -Syu
如果有更新,会自动进行提示,按照提示输入y并回车确认升级即可,pacman会自动将安装的所有工具升级到最新版。
4.在CLion中配置
安装完成后,在C:\msys64\mingw64\bin目录下,有可以直接使用的编译器,如gcc.exe,g++.exe,cmake.exe等。如果要在CLion中使用,需要进行配置,以下介绍CLion的配置方法。
打开Settings(左上角三条横线 -- Settings或按Ctrl+Alt+S),导航到图中所示位置:

点击MinGW(default)上方的+号,创建一个新的工具链配置,设置名称。点击每个菜单右侧的下拉箭头或文件夹图标,选择可执行文件位置。对于MSYS2默认安装路径,可以参考以下配置:

注意:如图所示,通常MSYS会提供较新的版本,新于CLion自带的MinGW工具链版本,在一些情况下,新版本不被CLion所支持,如果强行使用,会导致CLion崩溃。对于不支持的版本,可以保持使用CLion自带的。
在设置Build Tool后,CLion会自动检测位于ninja.exe同目录下的gcc.exe和g++.exe,即使用了通过MSYS安装的版本而不是CLion自带的版本,无需手动设置。
以上设置完成后点击右下角Apply,即可使用由MSYS2安装的MinGW工具链。
对于其他开发工具如VS Code,可以将编译器所在路径添加到系统环境变量。然后直接打开命令行,使用gcc xxx.cpp -o xxx.exe等命令进行编译。
2261

被折叠的 条评论
为什么被折叠?



