注释
.png)
看看这个 关于哪些库最适合使用存在一些混淆。Grbl_Esp32 源代码树在顶层的 libraries/ 文件夹中包含 arduinoWebSockets(版本 2.1.2)和 ESP32SSDP(版本 1.0)的副本。但是 platformio.ini lib_deps 部分包含 arduinoWebSockets 行(现已删除),这可能导致 platformio 安装版本 0.4.18。如果删除该行,将使用本地版本 – 但您可能需要执行“清理”操作。 更令人困惑的是,如果您将“arduinoWebSockets”行替换为“WebSockets”,platformio 将安装最新版本的 WebSockets 库 2.2.0,这似乎也可以工作。命名非常混乱。名为“arduinoWebSockets”的 platformio 包来自“ https://github.com/gilmaimon/ArduinoWebSockets ”,而“WebSockets”包来自“ https://github.com/Links2004/arduinoWebSockets ”。一个是“arduino..”,另一个是“Arduino…” Open Source 不是很好玩吗? libraries/ 中的另一个文件夹是 ESP32SSDP/。这也可以通过 platformio.ini lib_deps 中的一行引入——但该行是“ESP32SSPD”——注意最后两个字符“PD”而不是“DP”的换位。这来自回购协议中 library.properties 文件中的错字。上游 repo 最近——就像昨天一样——修复了这个错误,但是 platformio 注册表仍然是旧名称,没有新名称。 无论如何,如果您从 platformio.ini 中删除“arduinoWebSockets”和“ESP32SSPD”两行,它可能会起作用。 |
这和做一个清理(项目任务)确实解决了问题。 |
啊谢谢米奇!切换到 Devt 分支也解决了这个问题。将#583合并到 master中也许是个好主意?只是想,因为它修复了一个破坏性的错误…… |
在解决问题#554并更新到新的 pio core 5.0 之后,我遇到了一个我无法解释的全新问题。
编译失败并显示此消息:
不过,最有趣的部分是,如果我打开
esp32_tcp.hpp
并右键单击“转到定义”,#include <HTTPClient.h>
它会在 arduino 框架中正常打开文件。