【问题标题】:cannot open source file "locale.h" (dependency of "iostream")无法打开源文件“locale.h”(“iostream”的依赖项)
【发布时间】:2021-12-22 18:13:09
【问题描述】:

我继续遇到此包含错误/无法打开源文件。我现在也尝试将所有 vs 代码设置重置为默认值,但到目前为止我没有尝试过任何工作。任何关于在哪里寻找的建议,或者是什么导致了这种情况,我们将不胜感激!

我尝试在 json 中编辑配置,添加和编辑包含路径以及我在这里遇到的一些其他长期变化。

我附上了我当前遇到的错误的屏幕截图。我在某处读到安装 xcode 为其他人解决了这个问题。但我不使用 xcode,也不想使用。

我的编译器是 brew g++-11,我还检查了确保 json 中的路径与实际路径匹配。我有点不知所措,今天我试着向我的教授寻求帮助,他们同样迷失了方向。任何关于在哪里寻找解决方案的建议都会很棒。

我还尝试将包含路径从“${workspaceFolder}/**”更改为“${workspaceFolder}/inc”。这也不起作用。

这是当前的 c_cpp_properties.json

"configurations": [
    {
        "name": "Mac",
        "includePath": [
            "${workspaceFolder}/**"
        ],
        "defines": [],
        "macFrameworkPath": [],
        "compilerPath": "/usr/local/bin/gcc-11",
        "cStandard": "gnu17",
        "cppStandard": "gnu++17",
        "intelliSenseMode": "macos-gcc-x64"
    }
],
"version": 4

我还尝试检查智能感知扩展设置,但这确实有点超出我的范围。

【问题讨论】:

  • 错误是说文件不存在,不是内容有问题。仔细检查屏幕截图中的路径。确保它完全正确。我不知道 Mac 是否有区分大小写的文件名,但如果有,请仔细检查大小写。
  • @SilvioMayolo 您在哪里看到文件不存在?我不明白你在说什么,但我绝对有兴趣听听你的/关于它的任何想法。
  • 在工具提示中,我看到“ENOENT:没有这样的文件或目录,打开 ”。
  • 啊,我的错。我通过删除目录“$HOME/Library/ApplicationSupport/code”将 VScode 中的所有设置重置为默认值。这修复了解析失败的错误,但我仍然收到“检测到 #include 错误:请更新您的包含路径”错误消息。
  • 请不要发布您的问题的屏幕截图。它们更难阅读,无法搜索,并且(如此处)通常意味着您只是对正在进行的工作进行了屏幕截图,而没有尝试写 minimal reproducible example

标签: c++ c++11 vscode-settings vscode-extensions


【解决方案1】:

当这发生在我身上时,我将编译器中的 bin 文件夹添加到系统环境变量中,video 可能会对您有所帮助

【讨论】:

  • 嘿,感谢您的建议,不幸的是,您发布的视频是针对 windows 的,我在 mac 上遇到了这个问题。
【解决方案2】:

我遇到了同样的问题,我是这样解决的:

  • 打开终端,使用which XXX 其中XXX 是您的编译器并复制路径
  • 在 VSC 上,转到 Configuration -> "C_Cpp › Default: Compiler Path" 并粘贴路径

它现在应该可以工作了,但是我从未使用过 c_cpp_properties.json 文件。

【讨论】:

    猜你喜欢
    • 2021-06-09
    • 2021-04-01
    • 2021-01-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多