如何在VS Code中配置GCC编译器

在 VS Code 中配置 GCC 编译器,核心是先安装 MinGW‑w64(Windows 下的 GCC 移植版)、配置环境变量,再安装 VS Code 插件并完成编译/调试配置。下面是完整步骤(以 Windows 为例)。

一、安装 MinGW‑w64(获取 GCC)

1. 下载安装

可以直接下载 MinGW‑w64 压缩包解压(如 C:\mingw64),这里推荐用 MSYS2 安装(稳定、更新快):

  • 下载 MSYS2 安装包:msys2.org
  • 安装到无中文路径(如 C:\msys64),完成后勾选 Run MSYS2 now
  • 在 MSYS2 终端执行:
    bash pacman -S --needed base-devel mingw-w64-ucrt-x86_64-toolchain
  • 按回车确认、输入 Y 安装完整工具链(含 gcc/g++/gdb)。
2. 配置系统环境变量
  • 复制 MinGW‑w64 的 bin 路径(如 C:/msys64/ucrt64/binC:\mingw64\bin)。

  • 打开:此电脑 → 属性 → 高级系统设置 → 环境变量。

  • 用户变量 / 系统变量 中找到 Path → 编辑 → 新建 → 粘贴路径 → 确定保存。

  • 重启终端(CMD/PowerShell),验证:

    bash 复制代码
    gcc --version
    g++ --version
    gdb --version

    出现版本信息即成功。

二、VS Code 插件安装

打开 VS Code,安装 2 个核心插件:

  1. C/C++(微软官方,必装):提供语法高亮、智能提示、编译/调试支持。
  2. Code Runner(可选):一键运行代码,方便快速测试。

三、配置 VS Code 编译环境(3 个关键文件)

1. 配置编译器路径(c_cpp_properties.json)
  • 打开 C/C++ 项目文件夹(必须是文件夹,不能单文件)。

  • Ctrl+Shift+P → 输入 C/C++: 编辑配置(JSON) → 回车自动生成 c_cpp_properties.json

  • 修改 compilerPath 为你的 gcc.exe 路径,示例:

    json 复制代码
    {
      "configurations": [
        {
          "name": "Win32",
          "includePath": ["${workspaceFolder}/**"],
          "defines": ["_DEBUG", "UNICODE", "_UNICODE"],
          "compilerPath": "C:/msys64/ucrt64/bin/gcc.exe", // 你的 gcc 路径
          "cStandard": "c17",
          "cppStandard": "c++17",
          "intelliSenseMode": "windows-gcc-x64"
        }
      ],
      "version": 4
    }

    保存后,VS Code 即可识别 GCC 与标准库。

2. 配置编译任务(tasks.json)
  • Ctrl+Shift+P → 输入 任务:配置任务 → 选择 C/C++: gcc.exe 生成活动文件 → 自动生成 tasks.json

  • 典型配置(编译 C++ 用 g++):

    json 复制代码
    {
      "version": "2.0.0",
      "tasks": [
        {
          "type": "cppbuild",
          "label": "C/C++: g++.exe 生成活动文件",
          "command": "C:/msys64/ucrt64/bin/g++.exe",
          "args": [
            "-fdiagnostics-color=always",
            "-g",
            "${file}",
            "-o",
            "${fileDirname}/${fileBasenameNoExtension}.exe"
          ],
          "options": { "cwd": "${fileDirname}" },
          "problemMatcher": ["$gcc"],
          "group": { "kind": "build", "isDefault": true },
          "detail": "编译器: C:/msys64/ucrt64/bin/g++.exe"
        }
      ]
    }
  • 编译:打开 .c/.cpp → 按 Ctrl+Shift+B 执行任务,生成 .exe

3. 配置调试(launch.json)
  • 左侧点击 运行和调试 (Ctrl+Shift+D)→ 创建 launch.json 文件 → 选择 C++ (GDB/LLDB)g++.exe 生成和调试活动文件

  • 典型配置:

    json 复制代码
    {
      "version": "0.2.0",
      "configurations": [
        {
          "name": "C/C++: g++.exe 调试活动文件",
          "type": "cppvsdbg",
          "request": "launch",
          "program": "${fileDirname}/${fileBasenameNoExtension}.exe",
          "args": [],
          "stopAtEntry": false,
          "cwd": "${fileDirname}",
          "environment": [],
          "externalConsole": false,
          "MIMode": "gdb",
          "miDebuggerPath": "C:/msys64/ucrt64/bin/gdb.exe",
          "setupCommands": [
            {
              "description": "为 gdb 启用整齐打印",
              "text": "-enable-pretty-printing",
              "ignoreFailures": true
            }
          ],
          "preLaunchTask": "C/C++: g++.exe 生成活动文件"
        }
      ]
    }
  • 调试:代码行号左侧打断点 → 按 F5 启动调试。

四、一键运行(Code Runner 配置,可选)

  1. 安装 Code Runner 后,按 Ctrl+, 打开设置 → 搜索 code-runner.executorMap → 点击 在 settings.json 中编辑

  2. 修改 C/C++ 执行命令:

    json 复制代码
    "code-runner.executorMap": {
      "c": "cd $dir && gcc $fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt",
      "cpp": "cd $dir && g++ $fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt"
    }
  3. 运行:打开代码 → 右上角 ▶️ 或按 Ctrl+Alt+N 一键编译运行。

常见问题

  • gcc 不是内部命令 :环境变量未配置或未重启终端,检查 Path 并重启。
  • 头文件波浪线/无智能提示c_cpp_properties.jsoncompilerPath/includePath 错误。
  • 调试失败launch.jsonmiDebuggerPath 指向正确 gdb.exe,且已编译出带调试信息(-g)的程序。
相关推荐
AI松子66613 小时前
vscode远程docker容器时报错
ide·vscode·docker
hjuan___17 小时前
给 Claude Code 装上“技能库”和“眼睛”:配置 Skills 与图片识别实战
vscode·minimax·mcp·ai 编程·claude code·cc switch
❀͜͡傀儡师17 小时前
GitHub Copilot for VS Code 中文使用完整教程
vscode·github·copilot
白头小黄18 小时前
ESP32+VScode+PIO实现基础的自带USB接口的JTAG调试
ide·vscode·编辑器
被放养的研究生18 小时前
vscode-settings.json(直接复制使用,带有注释)
ide·vscode·json
ILYT NCTR19 小时前
vscode配置django环境并创建django项目(全图文操作)
vscode·django·sqlite
2501_9159184120 小时前
快蝎iOS开发IDE:免Xcode开发,支持Swift/Flutter项目
ide·vscode·ios·个人开发·xcode·swift·敏捷流程
三品吉他手会点灯1 天前
STM32 VSCode 开发-C/C++的环境配置中,找不到C/C++: Edit Configurations选项
c语言·c++·vscode·stm32·单片机·嵌入式硬件·编辑器
小堃学编程2 天前
【项目实战】基于protobuf的发布订阅式消息队列(4)—— 服务端
c语言·c++·vscode·消息队列·gtest·protobuf·muduo
2501_915909062 天前
Xcode从入门到精通:全面解析iOS开发IDE的核心功能与实际应用指南
ide·vscode·ios·个人开发·xcode·swift·敏捷流程