ESP-IDF编译报错:esp_wifi.h等头文件找不到,公司可用程序无法编译
ESP32项目编译失败问题求助
我是一名从事嵌入式系统编程兼职的学生,拿到了公司正在使用的程序并被要求理解它。该程序是可正常运行的,开发人员能够毫无问题地完成ESP32项目的编译与烧录,因此代码和CMake文件应该不存在问题。但我无论是使用VSCode扩展还是idf.py都无法编译该程序,最初连官方网站的esp-idf示例也无法编译。
注:我是StackOverflow和ESP32的新手,若帖子存在问题请告知。终端错误信息已留存。
Windows 10环境操作记录
- 最初使用未激活的Windows 10系统下的VSCode,ESP扩展因无法定位工具完全无法启动编译,所有工具都报“could not be located”错误
- 后续操作:
- 先后从Espressif服务器下载v5.0.0、v4.3.3版本的esp-idf,之后又从Github服务器下载。严格按照Espressif文档要求安装
idf.py脚本环境的依赖并完成配置 - 手动为用户和系统设置
IDF_PATH和PATH环境变量,初始错误消失,但出现新错误,提示找不到项目输出的.elf文件(具体内容已记不清,若对解决问题必要可尝试复现) - 卸载并重装VSCode,以管理员权限运行VSCode
- 在VSCode的esp-idf扩展配置中,将
IDF_TOOLS_PATH从.espressif改为esp\esp-idf
- 先后从Espressif服务器下载v5.0.0、v4.3.3版本的esp-idf,之后又从Github服务器下载。严格按照Espressif文档要求安装
Ubuntu 22.04.1 LTS环境操作记录
- 切换到Ubuntu系统后,出现
fatal error: esp_event.h: No such file or directory错误,网上相关资料较少。按照文档中的Linux安装步骤操作,文档说明仅需完成步骤1(下载依赖)即可使用VSCode扩展 - 后续操作:
- 尝试从esp-idf配置中切换到“master分支”,下载后错误变为当前的:
fatal error: esp_wifi.h: No such file or directory - 使用
idf.py编译也出现相同错误
- 尝试从esp-idf配置中切换到“master分支”,下载后错误变为当前的:
其他异常情况
- 在Windows和Ubuntu系统中,
Doctor Command都无任何输出,甚至不会打开终端或窗口,我不确定它应返回什么内容,但看到网上讨论提到该命令的返回结果,特此说明 - 编辑补充:在Ubuntu中尝试编译官方示例时,编译成功,
Doctor Command也能正常工作,但公司的主代码仍存在编译问题。起初我以为是esp-idf配置有误,但现在看来可能并非如此。
内容的提问来源于stack exchange,提问作者alpnkazan
相关产品推荐
相关产品推荐

