关于#include 的两个奇怪问题,百思不得解,求大神讲明白!
Posted: Sat Oct 23, 2021 1:20 pm
最近在三台电脑上(Win10)装VSCODE下的ESP-IDF,遇到很多波折,但最后基本都可以正常使用,但是即便是完全一样的安装过程,出现的问题也不尽相同,目前最困扰我的问题就是 的问题,虽然也看了很多帖子,但是依然觉得很诡异,具体表现为以下两个矛盾上:
1. 安装好idf所有内容之后,会弹出一个cmd窗口,我在里面可以正常编译example里面的源程序(用的最简单的HelloWorld那个程序),但是到vscode里面,就不行,提示找不到开头 #include 的那几个头文件:
2. 同样的安装过程,上面问题出现在台式机上,但我的笔记本电脑却没有问题,虽然vscode里面也显示找不到头文件,但是所有编译和烧写都正常
针对上述情况,我看了一些解决方案,比如在vscode的 C/C++ config 里面,加入头文件的地址,虽然也能解决问题,但是我的疑惑还没解开,求大佬帮我解惑,两个问题:
1. 究竟是什么决定了能否识别到 include 路径?为什么有的电脑不需要配置,有的必须补充?
2. 到底应该在哪里配置?IDF的读取顺序是什么?
非常感谢!
Code: Select all
#include
1. 安装好idf所有内容之后,会弹出一个cmd窗口,我在里面可以正常编译example里面的源程序(用的最简单的HelloWorld那个程序),但是到vscode里面,就不行,提示找不到开头 #include 的那几个头文件:
- #include <stdio.h>
- #include "freertos/FreeRtos.h"
- #include "freertos/task.h"
- #include "driver/gpio.h"
- #include "sdkconfig.h"
针对上述情况,我看了一些解决方案,比如在vscode的 C/C++ config 里面,加入头文件的地址,虽然也能解决问题,但是我的疑惑还没解开,求大佬帮我解惑,两个问题:
1. 究竟是什么决定了能否识别到 include 路径?为什么有的电脑不需要配置,有的必须补充?
2. 到底应该在哪里配置?IDF的读取顺序是什么?
非常感谢!