Windows下vscode、MinGW+CMake环境搭建

Windows下vscode、MinGW+CMake环境搭建

  • 1. MinGW安装
  • 2. CMake安装
  • 3. vscode安装与配置
    • 3.1 软件安装
    • 3.2 vscode调试环境配置
    • 3.3 测试vscode下cmake的使用

1. MinGW安装

参考链接:MinGW-w64 C/C++编译器下载和安装

安装效果:
Windows下vscode、MinGW+CMake环境搭建_第1张图片
环境变量配置:
参考链接里演示的是win7下的环境变量编辑操作,这里笔者给出win10下的方法,其实是大同小异的。
右键计算机->属性->高级系统设置->高级->环境变量,然后鼠标双击变量Path,或者选中后点击编辑,如下图:
Windows下vscode、MinGW+CMake环境搭建_第2张图片
Windows下vscode、MinGW+CMake环境搭建_第3张图片
Windows下vscode、MinGW+CMake环境搭建_第4张图片
在变量值输入框的末尾输入MinGW解压后的bin文件夹路径,bin的后面有无斜杠均可。另外,环境变量分为系统和用户两种,如果写在系统环境变量中,则对该计算机所有用户有效。不过一般情况下,自己的电脑都只有自己一个用户,所以这里写在哪一种环境变量中都可以。
Windows下vscode、MinGW+CMake环境搭建_第5张图片
接下来操作的这一步是为了配合后续cmake使用,在环境变量中添加CC、CXX(分别表示C/C++编译器)变量,方便cmake模块寻找所需要的编译器。
Windows下vscode、MinGW+CMake环境搭建_第6张图片

完成上述步骤后,还有一个步骤推荐执行,在bin路径下,有一个mingw32-make.exe,这个可执行文件的作用类似于Linux系统下的make命令。这里可以直接在命令行终端中调用mingw32-make命令,笔者为了符合自己编译代码的习惯,将其复制一份,并重命名为make.exe。这样的好处是后续在vscode终端中可以直接使用make命令,与Linux系统中达成一致。
Windows下vscode、MinGW+CMake环境搭建_第7张图片

2. CMake安装

官网下载链接:https://cmake.org/download/
参考链接:https://www.cnblogs.com/herelsp/p/8679200.html
官网给的下载链接虽然可以用,但是下载速度也是真的感人。笔者从CSDN上找到了相关的安装包,最后在某宝上买了CSDN的自助下载链接下载。
CSDN链接:cmake-3.19.1-win64-x64(2).msi

安装:
Windows下vscode、MinGW+CMake环境搭建_第8张图片
环境变量配置:
Windows下vscode、MinGW+CMake环境搭建_第9张图片
Windows下vscode、MinGW+CMake环境搭建_第10张图片
这里cmake的环境变量是安装的时候自动添加的(选择的是给计算机所有用户添加到环境变量,所以添加到系统环境变量)。

3. vscode安装与配置

3.1 软件安装

官网下载链接:https://code.visualstudio.com/
Windows下vscode、MinGW+CMake环境搭建_第11张图片

安装过程:
Windows下vscode、MinGW+CMake环境搭建_第12张图片
这一步按照默认配置就行,环境变量可以自己添加,也可以让它自动添加(推荐)。
Windows下vscode、MinGW+CMake环境搭建_第13张图片
Windows下vscode、MinGW+CMake环境搭建_第14张图片
环境变量配置:
默认添加到系统环境变量。
Windows下vscode、MinGW+CMake环境搭建_第15张图片

3.2 vscode调试环境配置

关于vscode上launch.json和task.json文件的生成以及配置,笔者给出感觉还不错的参考链接:
C/C++编译器配置,launch.json和task.json文件的配置
Windows+VSCode+MinGW+CMake环境配置
博客中解释得比较详细。

  • 关于c_cpp_properties.json文件
    按快捷键Ctrl+Shift+P,搜索C++,选择Edit Configurations,自动在工程目录下生成.vscode/c_cpp_properties.json文件。笔者通常在文件配置包含头文件的路径(与CMakeLists.txt文件中include的路径不是同一个概念,这个文件是提供给vscode插件使用),方便写代码时安装的C++插件实施自动补全。
    Windows下vscode、MinGW+CMake环境搭建_第16张图片
    在这个文件中,有两个地方可以添加头文件的路径:
  1. 直接在"includePath"中添加路径,该方法简单、直接,但是头文件路径较多时手动添加比较麻烦;
    Windows下vscode、MinGW+CMake环境搭建_第17张图片
  2. 手动添加“configurationProvider”变量,它的值是执行cmake命令后生成的compile_commands.json文件,具体路径根据自己的实际情况而定,笔者这里是放在工程的build文件夹里(默认值)。

Windows下vscode、MinGW+CMake环境搭建_第18张图片

  • 关于tasks.json文件
    task.json文件的生成方式如下:按快捷键Ctrl+Shift+P,选择Tasks:Configure Default Build Task,然后根据编译器类型选择对象选项即可。这里需要注意的是最好在源文件页面(比如图中页面显示的是main.cc)按快捷键,不然会报错。
    Windows下vscode、MinGW+CMake环境搭建_第19张图片
    Windows下vscode、MinGW+CMake环境搭建_第20张图片
    在task.json文件中,task以列表的形式呈现,每增加一个task,就会在task[]列表中多一个项。
    Windows下vscode、MinGW+CMake环境搭建_第21张图片
    task文件中关键变量解释:
    type变量决定了task的类型,shell类型就是在命令行里运行command的命令;
    label变量表示该task的名字,理论上可以随意取,最好写有实际意义的名字;
    command变量表示需要被运行的命令;
    args变量表示command后跟的参数;
    options里面的cwd变量表示命令运行的路径;
    group里面的kind变量,写为build表示该task是个生成任务。
    调用该task的方法:按快捷键Ctrl+Shift+B,就能看到task列表里面定义的task。
    Windows下vscode、MinGW+CMake环境搭建_第22张图片
    方才展示的task相当于在shell命令行执行命令:cmake -G "MinGW Makefiles .."

  • 关于launch.json文件
    launch.json文件的生成方式如下:点击左侧debug按钮,点击Run and Debug(或者按快捷键F5)出现相关选择框,选择C++(GDB/LLDB),另外一个没用过,感兴趣的可以试试。
    Windows下vscode、MinGW+CMake环境搭建_第23张图片
    Windows下vscode、MinGW+CMake环境搭建_第24张图片
    第一次打开时可能会报错,这很正常,关闭报错提示框后,vscode会根据安装好的mingw编译器自动生成配置好的launch.json文件,保存在当前工程路径的.vscode文件夹下:
    Windows下vscode、MinGW+CMake环境搭建_第25张图片
    launch.json的各关键项解释如下:
    Windows下vscode、MinGW+CMake环境搭建_第26张图片

关于c/c++编译器:无论是.c文件还是.cpp文件都可以编译生成可执行文件,如果选择的是gcc.exe则只能编译c文件,编译c++文件,所以推荐使用g++编译器。

3.3 测试vscode下cmake的使用

示例代码:

#include 
using std::endl;
using std::cout;

int main()
{
    cout << "hello, world." << endl;
    for (int i = 0; i < 10; i++)
    {
        cout << "i = " << i << endl;
    }
    return 0;
}

CMakeLists.txt的文件内容:

cmake_minimum_required(VERSION 3.8)
project(HelloWorld)
add_compile_options(-std=c++11 -o0 -g)
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
add_executable(out main.cpp)

编译结果:
Windows下vscode、MinGW+CMake环境搭建_第27张图片
运行结果:
Windows下vscode、MinGW+CMake环境搭建_第28张图片
对上述代码进行Debug调试,断点选在for循环中的cout语句:
Windows下vscode、MinGW+CMake环境搭建_第29张图片


笔者将上述可能用到的文件整理到百度网盘,有需要的读者可自行前往下载:

链接:https://pan.baidu.com/s/1lyMTt8BtcXacpGVGWyqQiw

提取码:ddef

你可能感兴趣的:(开发环境配置,c++,cmake,vscode)