VScode配置C++出现无法识别g++问题怎么办?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VScode配置C++出现无法识别g++问题怎么办?相关的知识,希望对你有一定的参考价值。

g++ : 无法将“g++”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径,请确保
路径正确,然后再试一次。
系统路径我也加了

以windows7正确安装步骤为例:1、首先,需要打开桌面的visual c++6.0文件夹进入。3、然后接下来,在出来的页面点击运行程序选项。4、然后继续点击下一步,此时visual c++开始安装。5、然后下一步就是开始安装向导,再点击下一步。6、然后接下来弹出的页面,点击运行程序。7、然后页面上会提示安装向导需要重启电脑,点击确定。8、然后电脑就是开始重启过程。9、最后,重启之后,就可以看到电脑桌面上visual c++6.0已经安装好了。 参考技术A visual studio code编译运行C/C++代码:
使用 Code Runner - Visual Studio Marketplace 安装插件用进行任何配置能直接编译并运行默认情况使用GCCG++需要更改配置文件使用其编译器比clang本回答被提问者和网友采纳

即使通过开发人员命令提示符打开 VSCode 也无法识别 CL

【中文标题】即使通过开发人员命令提示符打开 VSCode 也无法识别 CL【英文标题】:VSCode doesn't recognize CL even after being opened through Developer Command Prompt 【发布时间】:2020-07-21 12:50:20 【问题描述】:

我正在尝试使用cl 使用 VSCode 构建 C++,VSCode docs(以及互联网上的大多数资源)指示最简单的方法是通过随附的开发人员命令提示符打开 VSCode使用 Visual Studio 或 Visual C++ 构建工具:

然后在 VSCode 的终端中:

cl 仍然无法识别。我不知道该怎么做,但感觉好像我没有做我应该做的事情。

提前致谢。


tasks.json 和 c_cpp_properties.json 文件内容:

tasks.json:


    "version": "2.0.0",
    "tasks": [
        
            "type": "shell",
            "label": "C/C++: cl.exe build active file",
            "command": "cl.exe",
            "args": [
                "/Zi",
                "/EHsc",
                "/Fe:",
                "$fileDirname\\$fileBasenameNoExtension.exe",
                "$file"
            ],
            "options": 
                "cwd": "$workspaceFolder"
            ,
            "problemMatcher": [
                "$msCompile"
            ],
            "group": 
                "kind": "build",
                "isDefault": true
            ,
        
    ]

c_cpp_properties.json:


    "configurations": [
        
            "name": "Win32",
            "includePath": [
                "$workspaceFolder/**"
            ],
            "defines": [
                "_DEBUG",
                "UNICODE",
                "_UNICODE"
            ],
            "windowsSdkVersion": "10.0.18362.0",
            "compilerPath": "D:/Programas/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.26.28801/bin/Hostx64/x64/cl.exe",
            "cStandard": "c11",
            "cppStandard": "c++17",
            "intelliSenseMode": "msvc-x64"
        
    ],
    "version": 4

【问题讨论】:

看起来在 powershell 中运行时 cl 不在路径中。 我希望您可以在 tasks.jsonc_cpp_properties.json 的构建问题中解决此问题 我将文件添加到帖子中。你认为可以做什么? "command": "cl.exe", 应该有 cl.exe 的完整路径,就像你在 c_cpp_properties.json 中一样 虽然解决了识别cl 的问题,但它仍然缺少包含文件的路径变量,例如iostreamvector。根据帖子中链接的文档,我不应该做所有这些。 【参考方案1】:

我发现使用编译工具的方式是使用“Visual Studio 2019 Developer Powershell”。为此,我写了以下几行 ("terminal.integrated.shell.windows""terminal.integrated.shellArgs.windows""terminal.integrated.automationShell.windows"):


        "workbench.colorTheme": "Default Dark+",
        "editor.fontFamily": "CaskaydiaCove NF, Consolas, 'Courier New', monospace",
        "terminal.integrated.shell.windows": "$env:USERPROFILE\\.dotnet\\tools\\pwsh.exe",
        "terminal.integrated.shellArgs.windows": [
        "-noe",
        "-c",
        "\"& $installDir='D:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\BuildTools'; Write-Host Using $installDir; Import-Module ($installDir + '\\Common7\\Tools\\Microsoft.VisualStudio.DevShell.dll'); Enter-VsDevShell -VsInstallPath $installDir; Set-Location '$workspaceFolder' \""
    ],
        "terminal.integrated.automationShell.windows": null,

或者这样:

"terminal.integrated.profiles.windows": 
        "PowerShell": 
            "source": "PowerShell",
            "icon": "terminal-powershell"
        ,
        "Command Prompt": 
            "path": [
                "$env:windir\\Sysnative\\cmd.exe",
                "$env:windir\\System32\\cmd.exe"
            ],
            "args": [],
            "icon": "terminal-cmd"
        ,
        "Git Bash": 
            "source": "Git Bash"
        ,
        "Developer PowerShell": 
            "path": [
                "$env:USERPROFILE\\.dotnet\\tools\\pwsh.exe"
            ],
            "args": ["-noe",
                "-c",
                "\"& $installDir='D:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\BuildTools'; Write-Host Using $installDir; Import-Module ($installDir + '\\Common7\\Tools\\Microsoft.VisualStudio.DevShell.dll'); Enter-VsDevShell -VsInstallPath $installDir; Set-Location '$workspaceFolder' \""
            ],
            "icon": "terminal-powershell"
        ,
    ,

【讨论】:

以上是关于VScode配置C++出现无法识别g++问题怎么办?的主要内容,如果未能解决你的问题,请参考以下文章

vscode下运行c++找不到头文件是怎么回事

如何在VSCode内编译运行C++

如何在VSCode内编译运行C++

VSCode开发C++时让intelliSense正确识别include关系

VSCode开发C++时让intelliSense正确识别include关系

ubuntu下vscode调试c++怎么配置launch.json和task.json