0

我有以下文件:

main.cpp
lib/EEPROMManager/EEPROMManager.cpp
lib/EEPROMManager/EEPROMManager.h

主.cpp:

#include <EEPROMManager.h>
#include <EEPROM.h>

EEPROMManager.h:

#include <EEPROM.h>

EEPROMManager.cpp:

#include <EEPROMManager.h>
#include <EEPROM.h>

当我建立:

lib/EEPROMManager/EEPROMManager.h:2:20: fatal error: EEPROM.h: No such file or directory

如果我仅在 EEPROMManager.cpp 中包含 EEPROM.h,则代码构建没有任何问题。一旦它包含在 EEPROMManager.h 中,构建就会失败。如果我只将它包含在 EEPROMManager.h 中,则构建失败。

显然,我不了解依赖项是如何工作的,但我无法弄清楚。

编辑:

EEPROM.h 是 Platformio 中 Arduino 框架的一部分。它位于:

.platformio/packages/framework-arduinoespressif32/libraries/EEPROM/src

我检查了 c_cpp_properties.json,上面的路径包括在内。包含完整路径而不是 EEPROM.h 可以解决此问题。这似乎是一个 PlatformIO 配置问题,但我无法弄清楚是什么导致了问题。

4

0 回答 0