【VSCode】Windows环境下,VSCode 搭建 cmake 编译环境(通过配置文件配置)

本文介绍了如何在VSCode中使用CMake配置编译环境,包括下载WindowsGCC编译器,配置launch.json和tasks.json以支持debug和编译过程,以及解决初次编译可能遇到的问题。

除了之前的使用 VSCode 插件来编译工程外,我们也可以使用配置文件来编译cmake工程,主要依赖 launch.jsontasks.json 文件。


目录

一、下载编译器

1、下载 Windows GCC

2、选择编译器路径

二、配置 debug 环境

1、配置 lauch.json 文件

2、配置 tasks.json 文件

三、编译工程

1、测试工程结构

2、开始编译 


一、下载编译器

1、下载 Windows GCC

这里是在Windows环境下,所以下载的是 Windows 环境使用的 gcc 编译器。

下载地址: MinGW-w64 - for 32 and 64 bit Windows - Browse Files at SourceForge.net

下载完毕后解压,并将 bin 目录添加到环境变量。bin 目录下有几个比较重要的执行文件

2、选择编译器路径

将 bin 目录添加到环境变量后,Ctrl + Shift + P 通过 UI 选择编译器路径  

二、配置 debug 环境

配置文件 launch.json 和 tasks.json 都在 .vscode 目录下。其他目录可暂时不理会。

1、配置 lauch.json 文件

主要参数说明:

  • program:  可执行文件的完整路径。这里的执行文件名必须和cmake生成的执行文件名一致
  • miDebuggerPath: 调试器的完整路径。(即便添加了环境变量也需要填入完整路径)
  • preLaunchTask:调试前要做的操作,会去tasks.json 文件中找对应的标签。cmake工程在调试之前一般需要 cmake .. ,然后再 make 生成执行文件
{
  "version": "0.2.0",
  "configurations": [
    {
      "name": "C/C++ Runner: Debug Session",           // 配置名称(调试时会在下拉菜单中显示)
      "type": "cppdbg",                                
      "request": "launch",       
      "program": "${workspaceFolder}/build/testProj.exe",  // 执行文件的完整路径(这里的执行文件名必须和cmake生成的执行文件名一致)
      "args": [],                                      // 执行文件运行时,传递给执行文件的命令行参数
      "stopAtEntry": false,                            // 一般设为false,设为true时会将程序暂停在程序入口
      "externalConsole": true,                         // 一般设为true,表示调试时显示控制台
      "cwd": "${workspaceFolder}",                     // 调试程序的工作目录,一般为 ${workspaceFolder} 即代码所在目录
      "MIMode": "gdb",
      "miDebuggerPath": "D:/Download/Windows GCC/x86_64-7.3.0-release-win32-sjlj-rt_v5-rev0/mingw64/bin/gdb.exe", // 使用的调试器的全路径
      "setupCommands": [
        {
          "description": "Enable pretty-printing for gdb",
          "text": "-enable-pretty-printing",
          "ignoreFailures": true
        }
      ],
      "preLaunchTask": "build",   // 表示调试前要做的操作,这里的build只是一个标签,标签内容在 tasks.json 中
    }
  ]
}

2、配置 tasks.json 文件

这里注意 -G MinGW Makefiles,如果不加这个选项,默认会按照 Visual Studio 的标准进行编译,生成的文件如下: 

很显然这并不是我们期望的,我希望生成的是 Makefile 文件,因此这里需要加上  -G MinGW Makefiles 选项,生成 mingw32-make 能够编译的Makefile。生成的文件如下: 

{
    "tasks": [
        {
            "label": "build",       // build 操作
            "dependsOn":[
                "cmake",            // build 操作依赖于 cmake 和 make 操作
                "make"
            ]
        },
        {
            "label": "cmake",         // cmake 操作
            "type":"shell",           
            "command":"cmake",        // 执行 cmake 操作所使用的命令
            "args": [                 // cmake 命令执行时的命令行参数
                "-G MinGW Makefiles", // 生成 mingw32-make 能够编译的Makefile
                "../"
            ],
        },
        {
            "label": "make",                // make 操作
            "command":"mingw32-make.exe",   // 执行 make 操作所使用的命令(mingw32-make.exe已经添加了环境变量)
            "args": [
            ],
            "options": {
                "cwd": "${workspaceFolder}/build"     // 表示执行当前操作的工作目录
            }
        },
    ],
    "version": "2.0.0",
    "options": {
        "cwd": "${workspaceFolder}/build"     // 表示执行上述操作时的工作目录
    },
}

三、编译工程

1、测试工程结构

因为是使用配置文件配置,需要在 CMakeLists.txt 的同级目录下创建一个 build 目录

CMakeLists.txt

cmake_minimum_required(VERSION 3.15.0)
project(testProj)

file(GLOB ALL_SOURCES *.cpp *.h)

add_executable(${PROJECT_NAME} ${ALL_SOURCES})

main.cpp

#include <iostream>

int main(void)
{
    printf("hello world \n");
    return 0;
}

2、开始编译 

点击 Start Debugging 或者按 F5 就可以开始编译了。

第一次编译会报错,因为一开始 build 目录为空,cmake 还未执行完,make 操作就已经先运行了,所以会出现找不到 Makefile 的问题。

F5 再次编译,这个时候不出意外的话就会编译通过了

参考文章: 

04-vscode搭建cmake的编译环境_vscode配置cmake编译-优快云博客

<think>好的,我现在需要帮助用户在VSCode中正确设置CMake路径。根据用户提供的引用内容,我需要先整理出具体的步骤。 首先,引用[1]提到需要从CMake官网下载二进制包,而不是源代码。用户下载后解压,然后将bin目录添加到系统环境变量。这可能涉及到如何找到环境变量设置的地方,比如在Windows系统中是通过系统属性里的高级设置。这部分需要详细说明,确保用户能正确添加路径。 接下来,引用[2]说明在VSCode中通过命令面板执行CMake快速入门,生成相关文件。不过用户的问题是关于路径配置,可能需要检查CMakeVSCode中的扩展设置是否正确指向了CMake.exe的位置。例如,安装CMake Tools扩展后,在设置里指定CMake路径,或者在用户设置中修改cmake.cmakePath的值。 另外,引用[3]提到CMake是跨平台的构建系统,用户可能在Linux或macOS上操作,但根据引用内容中的示例,可能用户使用的是Windows。不过还是需要考虑不同系统的路径差异,比如在Linux下可能需要通过命令行安装或源码编译,但用户已经下载了二进制包,所以重点应在环境变量和VSCode配置上。 用户可能遇到的常见问题包括:环境变量未正确设置导致命令行无法识别cmake命令,或者VSCodeCMake扩展未找到CMake路径。需要分步骤指导用户检查这两部分。例如,首先在终端输入cmake --version确认是否安装成功,如果失败,说明环境变量有问题。然后在VSCode中检查CMake Tools的配置,确保路径正确。 最后,生成相关问题时要围绕CMake配置环境变量、VSCode扩展使用等方面,帮助用户进一步解决可能遇到的问题。</think>### 在 VSCode 中设置 CMake 路径的步骤 #### 1. **下载并安装 CMake** - 从 [CMake官网](https://cmake.org/download/) 下载预编译的二进制包(选择 `Windows x64 ZIP` 或其他对应系统的版本)[^1]。 - 解压到指定目录(例如 `D:\CMake`),确保解压后的目录包含 `bin` 文件夹,其中包含 `cmake.exe`。 #### 2. **添加 CMake 到系统环境变量** - 将 CMake 的 `bin` 目录(例如 `D:\CMake\bin`)添加到系统环境变量 `PATH` 中: - Windows: 打开「系统属性」→「高级」→「环境变量」→ 编辑「Path」→ 添加 CMake 的 `bin` 路径。 - Linux/macOS: 在终端中编辑 `~/.bashrc` 或 `~/.zshrc`,添加 `export PATH="/path/to/cmake/bin:$PATH"`,然后运行 `source ~/.bashrc`。 #### 3. **验证 CMake 安装** - 打开终端或命令提示符,输入: ```bash cmake --version ``` 若显示版本信息(例如 `CMake 3.28.3`),则安装成功。 #### 4. **在 VSCode配置 CMake 路径** - **方法一(推荐):通过 CMake Tools 扩展** 1. 安装 [CMake Tools](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cmake-tools) 扩展。 2. 按下 `Ctrl+Shift+P` 打开命令面板,输入 `CMake: Scan for Kits`,等待自动检测到 CMake。 3. 若未自动检测到,手动配置: - 打开 VSCode 设置(`Ctrl+,`),搜索 `Cmake: Cmake Path`。 - 输入 CMake 可执行文件的完整路径(例如 `D:\CMake\bin\cmake.exe`)[^2]。 - **方法二:通过用户设置文件** 1. 打开 `settings.json`(命令面板输入 `Preferences: Open User Settings (JSON)`)。 2. 添加以下配置: ```json { "cmake.cmakePath": "D:\\CMake\\bin\\cmake.exe" } ``` #### 5. **测试 CMake 项目** - 新建文件夹并用 VSCode 打开,运行 `CMake: Quick Start` 生成项目模板。 - 编写代码后,使用 `CMake: Build` 编译项目。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值