vs code 同一个工作区不同目录找不到头文件

网络搜索居然没有很好的答案,都是乱写的。

正常情况我们会有一个sdk目录,一个app目录,其中sdk是厂商的,不会变,但是app是开发的,随便变。

所以一般vscode打开sdk目录,再把app拖进来,这时候就是工作区。但是这时候就会发现app里找不到sdk的头文件。

比如esp32的:

LYJ博客

如上图,idf就是sdk目录,在h盘,station就是在我的文档(c盘)下面的。这时候就会发现station下找不到头文件。

解决方法是在station下新建 .vscode目录/c_cpp_properties.json文件。

然后把sdk目录加进去:

{
    "configurations": [
        {
            "name": "Win32",
            "includePath": [
                "${workspaceFolder}/**",
                "H:/Espressif/frameworks/esp-idf-v5.4.1/**"
            ],
            "defines": [
                "_DEBUG",
                "UNICODE",
                "_UNICODE"
            ],
            "windowsSdkVersion": "10.0.22621.0",
            "compilerPath": "cl.exe",
            "cStandard": "c17",
            "cppStandard": "c++17",
            "intelliSenseMode": "windows-msvc-x64"
        }
    ],
    "version": 4
}

其中最重要的就是:"H:/Espressif/frameworks/esp-idf-v5.4.1/**"

重新打开工作区就有了。

有的网友说直接要"${workspaceFolder}/**"就可以了,表示工作区下的所有文件,实际也不行。因为你这个工作区目录不一定包含了app目录。最好的就是直接加上sdk绝对目录。

本文为3YL原创,转载无需联系,但请注明来自labisart.com。

原创文章不易,如果觉得有帮助,可打赏或点击右侧广告支持:

查看打赏记录

发表评论请遵守党国法律!后台审核后方可显示!
  • 最新评论
  • 总共0条评论
  • Blog v1.1© 2025 labisart.com 版权所有 | 联系:labartwork@163.com