Sd2Card.h: No such file or directory
编译时找不到 Sd2Card.h,说明还没有安装提供它的库:SD(作者 arduino-libraries)。
完整报错通常长这样
fatal error: Sd2Card.h: No such file or directorycompilation terminated.Arduino IDE 里安装
- 菜单「工具 → 管理库」,或按
Ctrl+Shift+I。 - 搜索框输入
SD。 - 在结果里找作者为 arduino-libraries 的那一个,点「安装」。如果弹窗问是否一起安装依赖库,选「全部安装」。
- 重新编译。
PlatformIO 里安装
在 platformio.ini 对应的环境下加一行,保存后重新编译,会自动下载:
lib_deps = arduino-libraries/SD@^1.3.0命令行(Arduino CLI)
arduino-cli lib install "SD"关于这个库
Enables reading and writing on SD cards. Once an SD memory card is connected to the SPI interface of the Arduino board you can create files and read/write on th
最新版本:1.3.0 · 支持:所有平台 · 许可证:GPL-3.0 · 被 26 个库依赖
装了还是报错?
- 装错了同名库:库管理器里常有好几个名字相近的库,确认作者是 arduino-libraries。同样提供
Sd2Card.h的还有:adafruit/SD、openbci/OpenBCI_32bit_SD,示例代码用的是哪一个,就装哪一个。 - 开发板不支持:这个库支持 所有平台。换成不支持的板子时,即使装上也可能编译出错。
- 缺依赖库:报错里出现新的「No such file」时,再按同样的方法装那个头文件对应的库。板伴可以一次识别所有缺失的头文件。
- 大小写不对:Linux 和 macOS 区分大小写,
#include里的文件名要和Sd2Card.h完全一致。
arduino-libraries 的其他常用库
板伴 Boardly · 给硬件初学者的免费排错工具。内容依据公开资料整理,尚未逐条经过实物验证,请以实际测量为准。