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

时间:2017-10-12 20:57:02

标签: g++ mingw

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

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

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

14 个答案:

答案 0 :(得分:3)

我遇到了类似的问题,我相信我已经把它缩小到因为“g ++”是你的命令。检查您的任务配置文件,并记下您为“命令”设置的内容。

“命令”是任务将尝试和运行的任何参数,在你的情况下我认为是“-g”和“helloworld.cpp”。

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

查看VS代码的文档,我确实找到了在任务配置中引用环境变量的方法:{env:Path}将作为我的用户环境变量“Path”的前缀,其中引用了c:\ Mingw \ lib \ bin(注意这是一条准确的路径,只是一个例子)。我认为我们已经非常接近它的工作,这只是走向g ++的问题。我的下一次尝试我想我只需要改变“命令”来引用g ++的绝对路径。

答案 1 :(得分:1)

我发生的事情是VSC没有自动为我的PATH采购货源。添加g ++,关闭并重新打开它之后,问题就解决了。

答案 2 :(得分:1)

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

答案 3 :(得分:1)

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

第 2 步 - 右键单击​​“此电脑”按钮转到属性。

第 3 步 - Click on the 'Advanced System Settings' as shown in the image.

第 4 步 - Click on the 'Environment Variables' as shown in the image.

第 5 步 - Select 'Path' and Click on the 'Edit' button as shown in the image.

第 6 步 - Paste the path and Click on the 'OK' button as shown in the image.

如果这不起作用,请从头开始再试一次。

答案 4 :(得分:0)

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

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

Tasks.json

它将正确生成文件。

答案 5 :(得分:0)

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

要绕过此问题,我在任务的command属性中包含了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
            }
        }
    ]
}

答案 6 :(得分:0)

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

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

答案 7 :(得分:0)

打开您的task.json和launch.json。确保将launch.json中的“ preLaunchTask”设置为与task.json文件中task数组中的一个对象的“标签”相同的字符串值。

launch.json file

tasks.json file

答案 8 :(得分:0)

首先,您需要确保已添加

C:\ MinGW \ bin 如果使用Windows环境,请在环境变量中输入

答案 9 :(得分:0)

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

答案 10 :(得分:0)

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

SYSTEM VARIBALES 下的环境变量中,通过点击 VARIABLE 中的 CLASSPATH 创建一个名为 VARIABLE VALUE<path to MinGW>NEW 作为 SYSTEM VARIABLES

The following window will pop up and enter the required inputs

After the entering it your system variables should look like this

答案 11 :(得分:-1)

对我来说,关闭并重新打开VS Code而不更改任何内容即可解决我的问题。

答案 12 :(得分:-1)

安装MinGW后,重新启动VS Code。该程序肯定会执行。

答案 13 :(得分:-1)

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

此后,如果您在安装 MinGW 后仍然遇到此错误。 只需关闭 VS 代码,然后再次打开它。 一切都会好的。