在构建时找不到包含的库

时间:2019-10-15 16:30:55

标签: c++ platformio

我有以下文件:

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

main.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

如果仅将EEPROM.h包含在EEPROMManager.cpp中,则代码构建不会出现任何问题。一旦将其包含在EEPROMManager.h中,构建就会失败。 如果仅将其包含在EEPROMManager.h中,则构建将失败。

对于依赖项的工作方式,显然我不了解,但我无法弄清楚。

编辑:

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

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

我检查了c_cpp_properties.json,其中包括上述路径。 包括完整路径而不是EEPROM.h可解决此问题。这似乎是PlatformIO配置问题,但我不知道是什么原因引起的。

0 个答案:

没有答案