ESP32 开发笔记(附1) VS Code 包含显示波浪线,H文件包含错误 fatal error: xxx.h: No such file or directory

博客主要介绍了VS Code中头文件包含的两个问题及解决办法。一是包含头文件显示波浪线,原因是未设置包含目录,可在c_cpp_properties.json文件中添加对应目录;二是编译提示找不到头文件,可在出错的.c文件同目录的CMakeLists.txt中添加头文件目录位置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、VS Code 包含头文件显示波浪线

esp32工程包含头文件中经常遇到包含头文件显示波浪线,这不并影响工程的编译,但会看着不舒服,也无法在编辑器中跳转函数,鼠标放在头文件上方会显示无法打开XXXX头文件,是因为Code文件包含没有设置包含目录。

解决办法:打开鼠标上方显示的无法打开头文件,记住文件名,在esp-idf-vX.X目录中或ESP_IDF_Tools\.espressif的目录中查找对应的.h文件(基本都在idf库目录中),记住查找到的文件目录,将目录复制

打开工程中的c_cpp_properties.json文件,在includePath标签下添加刚才复制的目录,注意:复制进来的目录斜杠是反的,按下图设置,保存,波浪线消失!~

二、H文件包含错误 fatal error: xxx.h: No such file or directory

明明已经包含头文件,编译提示找不到头文件

解决办法:打开出错的.c文件同目录中的CMakeLists.txt,添加出错头文件的目录位置(要找头文件所在目录,直接在库目录中搜索文件即可,再将所有目录复制到CMakeLists.txt中)

图1为LVGL工程的配置,图2为普通工程的配置

 

 

### ESP32-CAM 项目中找不到 `ArduinoJson.h` 文件的解决方案 当遇到 `fatal error: ArduinoJson.h: No such file or directory` 错误时,这通常意味着开发环境未能找到所需的库文件。对于 ESP32-CAM 使用 Arduino IDE 进行开发的情况,可以采取如下措施来解决问题。 #### 安装缺失的库 确保已经通过 Arduino 库管理器安装了 `ArduinoJSON` 库[^1]。打开 Arduino IDE 后,在菜单栏依次点击 **工具** -> **库管理**, 在弹出窗口内的搜索框输入 `ArduinoJSON`, 找到由 Benoit Blanchon 维护的那个版本并点击安装按钮完成下载与部署操作。 如果之前曾经手动放置过该库至自定义路径下,则需确认其位置已被加入到项目的 include 路径列表里;或者更简单的方法是删除旧副本重新经由上述途径获取最新稳定版资源。 另外值得注意的是, 若使用的是较新的 Arduino IDE 版本 (比如 2.x), 可能会因为默认启用 C++17 标准而导致某些老旧第三方库无法正常工作。此时可以在编译选项里面调整使用的标准为 C++11 或者尝试更新这些依赖项以获得更好的兼容性支持[^3]。 ```cpp // 示例代码片段展示如何正确引入 ArduinoJson 头文件 #include <ArduinoJson.h> void setup() { Serial.begin(9600); } void loop() { } ``` #### 验证硬件平台配置 检查当前所选板子型号是否匹配实际使用的设备类型。在 Arduino IDE 中选择合适的开发板是非常重要的一步,不恰当的选择可能会引发一系列连锁反应式的构建失败现象。针对 ESP32-CAM 设备而言,应该从 **工具** 下拉菜单里的 **开发板** 子菜单选取对应的选项。 #### 更新核心包和支持软件 保持所有相关联的核心包处于最新状态有助于减少因 API 更改带来的潜在冲突风险。前往 [Espressif 官方 GitHub](https://github.com/espressif/arduino-esp32) 页面查看是否有新发布的固件可供升级,并按照说明文档指引执行相应步骤。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值