Visual Studio 代码找不到我的 MinGW-w64 的 g++ 命令

Visual Studio Code cannot find the g++ command of my MinGW-w64

Visual Studio 代码找不到我的 MinGW 的 g++ 命令(顺便说一句,intelliSense 没有问题,因为我已经正确设置了 c_cpp_propertites.json)。任何的想法?在此先感谢,以下是输出:

正在执行任务:g++ -g helloworld.cpp

g++ : 术语 'g++' 未被识别为 cmdlet、函数、脚本文件或可运行程序的名称。检查名称的拼写,或者如果包含路径,请验证路径是否正确,然后重试。

我遇到了类似的问题,我相信我已经将问题范围缩小到 "g++" 是你的命令。检查您的任务配置文件并记下您为 "command".

设置的内容

"command" 是任务要尝试的内容,运行 以及您规定的任何参数,在您的情况下我假设是“-g”和 "helloworld.cpp"。

现在,我无法确定的是为什么它没有找到 g++,就好像我尝试通过命令提示符编译源文件一样,我没有问题并且编译成功。

通过查看 VS 代码的文档,我确实找到了一种在任务配置中引用环境变量的方法:{env:Path} 将作为我的用户环境变量 "Path" 的前缀,它有一个引用到 c:\Mingw\lib\bin (注意这是一个准确的路径,只是一个例子)。我认为我们已经非常接近让它工作了,这只是指向 g++ 的问题。我想我的下一次尝试将简单地更改 "command" 以引用 g++ 的绝对路径。

该问题的临时解决方案如下:---

  1. 以管理员身份在 运行 中打开 VsCode
  2. 并按如下方式设置您的 tasks.json。例如:-- 如果您的文件名为 main.cpp

它将正确构建文件。

发生在我​​身上的是 VSC 没有自动获取我的 PATH。我添加g++后,关闭再打开,问题就解决了。

对我来说,在不做任何更改的情况下关闭并重新打开 VS Code 解决了我的问题。

我已通过在 windows 命令提示符中键入 setx path 将 mingw-w64 的 bin 路径添加到 windows 路径来解决此问题。 setx 路径 "%path%;PATHTOBIN" 很可能 return PATH 已被截断为 1024 位,在这种情况下,我直接在寄存器中编辑了路径变量: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SessionManager\Environment

我刚刚遇到了同样的问题。将 \mingw\bin 文件夹添加到我的 PATH 变量没有帮助。 cmd 中的 运行 g++ 或 PS window 工作正常,因此 VSCode 似乎在读取或解析 PATH 变量时遇到问题。

为了绕过这个问题,我在任务的命令 属性 中包含了 g++.exe 的完整路径。保存任务后,VSCode 能够构建我的 .cpp 文件。

{
    // See https://go.microsoft.com/fwlink/?LinkId=733558
    // for the documentation about the tasks.json format
    "version": "2.0.0",
    "tasks": [
        {
            "label": "build g++",
            "type": "shell",
            "command": "C:\mingw-w64\x86_64-8.1.0-posix-seh-rt_v6-rev0\mingw64\bin\g++.exe",
            "args": ["-g", "-o", "${fileBasenameNoExtension}", "${fileBasename}"],
            "group": {
                "kind": "build",
                "isDefault": true
            }
        }
    ]
}

'$' 我在使用 vsc 时遇到了类似的问题。
对我来说:
1)制作(Remaking)系统变量路径到C:\MinGW\bin.
2) 在 c_cpp_properties.json 添加:

"browse": {"path": ["${workspaceFolder}","C:\MinGW\lib\gcc\mingw32\8.2.0\include\c++"]}

打开你的 tasks.json 和 launch.json。确保 launch.json 中的 "preLaunchTask" 设置为与 tasks.json 文件中任务数组中的一个对象的 "label" 相同的字符串值。

launch.json file

tasks.json file

首先,您需要确保已添加

C:\MinGW\bin in the environment variable if you using windows environment

编辑系统环境变量==>环境变量..==>系统变量==>点击路径(或Select路径+编辑)==>新建粘贴C:\MinGW\bin ==> 好的

安装MinGW后,重启VS Code。程序一定会执行。

步骤 1 - 复制您的 mingw 编译器的 bin 文件路径(例如 C:\Program Files\mingw-w64\x86_64-8.1.0-posix-seh-rt_v6-rev0\mingw64\bin)

步骤 2 - 右键单击​​ 'This PC' 按钮转到属性。

步骤 3 -

步骤 4 -

步骤 5 -

步骤 6 -

如果这不起作用,请从头开始重试。

按照 here 给出的说明进行 C/C++ 使用 VS 代码编程

如果安装 MinGW 后仍然出现此错误。 只需关闭 VS 代码,然后再次打开它。 一切都会好起来的。

好吧,我也遇到了这个问题,我尝试了每一种方法,但都没有正常工作。但后来我这样做了,它奏效了。

SYSTEM VARIBALES 下的环境变量中,通过单击 SYSTEM VARIABLES 中的 NEW 创建一个名为 CLASSPATHVARIABLE VALUEVARIABLE 作为 <path to MinGW> =]

在文件c_cpp_properties.json中添加编译路径如下

"compilerPath": "C:/MinGW/bin/g++.exe",

它对我有用(从你的 mingw 目录添加关于你的 g++ exe 的路径)..

  1. 在windows搜索框
  2. 中搜索路径

  1. 点击环境变量

  1. 点击路径然后点击编辑

  1. 转到 C: 驱动器 并查找 MinGW 文件夹

  1. 然后转到bin文件夹并复制路径

  1. 创建一个新建变量并粘贴路径并将其移至顶部

之后点击确定并重新启动您的 terminal/vs 代码以使其再次运行。