0·ESP IDF搭建VScode环境踩坑记(找不到头文件)

这篇具有很好参考价值的文章主要介绍了0·ESP IDF搭建VScode环境踩坑记(找不到头文件)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

环境搭建

简单记录下自己遇到的问题:

①找不到头文件

②Cmake插件出现问题

小结

环境搭建

整体的环境搭建,网络上还是有很多教程的,这里就不重复造轮子了,可以参考下面的链接

【ESP32-IDF环境搭建之vscode环境】

官方也有出一个指导教程,可以作为辅助参考,基本还是比较顺畅的

快速入门 ESP编程指南

我选择的是ESP IDF + VScode,具体环境也可以用 ESP IDF+Espressif IDE 的官方套件组合,又或者是 Arduino+VScode 的开放生态环境进行开发

乐鑫官方 ESP-IDF,这是官方的首推的开发方式,能够最大限度发挥ESP32的性能,代价就是不方便或者说是开发不是那么高效;

乐鑫官方出品 Arduino core for the ESP32,官方出品的 Arduino 编程软件支持,上手简单,大部分编程语法和 Arduino 兼容,借助于 Arduino 生态,有非常丰富的资源可直接使用

每个组合各有各的优势,可以根据自己的开发习惯来选择。

环境搭好之后,可以去跑下例程,如果是默认安装路径的话,在下面这个位置应该可以找到“hello world”文件夹

C:\Espressif\frameworks\esp-idf-v4.3.2\examples\get-started

用vscode—打开文件夹—hello world,然后选择COM和esp模块,打开hello_world_main.c就可以编译和下载了,注意vscode最下方工具栏

vscode找不到头文件,基于ESP32的物联网开发设计,vscode,ide,编辑器

简单记录下自己遇到的问题:

①找不到头文件

vscode找不到头文件,基于ESP32的物联网开发设计,vscode,ide,编辑器

 一般来说,初次编译完后,装了C/C++插件之后会有一个自动提示,然后点击“是”之后就自动解决了

vscode找不到头文件,基于ESP32的物联网开发设计,vscode,ide,编辑器

但是我的就一直没有出现(可能是版本不同)网上也没有找到很好的解决方法

半夜,问了一位大佬,他说:

不需要任何插件,查看-命令面板-点击“添加vscode配置文件夹”,左下角点击 垃圾箱  清理一下,重新编译即可解决找不到头文件的问题。 

然后C/C++插件弹出了自动配置的提示,然后成功解决!

        然而,非常难过的是,过了一天,换了一个例程,又出现这个问题了,而且此方法居然失效了~又看了十几个贴子,尝试了各种方法:

  1. 先在Cmakelist中添加路径
    EXTRA_COMPONENT_DIRS += $(PROJCT_PATH)/components/blink
  2. 又尝试在.json文件中添加PATH路径
    "C:/Espressif\frameworks/esp-idf-v4.3.2/components/**“
  3. 加了一个component文件夹手动将官方idf一堆头文件中将用到的文件拖到了同一个层级的根目录文件夹中(其他头文件都识别出来了,但是freertos头文件死活识别不出来,也不能跳转到定义)
  4. 更换头文件命名方式 因为例程里面的#include用的“  ”索引方式,可能出现头文件覆盖问题,说不定因为之前配置过stm32,导致出现了的错误识别。
  5. 删掉.vscode文件夹,清除build文件,然后重启。寄希望于触发系统自动配置条件,获得正常流程中的弹窗选项(可是并没有出现)
  6. ...

        以上方法,有些带来了一点效果(但也不完全),又触发了新的bug,由于理解尚浅,无法直击要害,只能先mark一下,以后熟练了再捣鼓。估摸着是是版本或者系统问题,别人的C/C++插件都会自动弹出选项、系统自动找到头文件路径,但是到了我这就需要一通操作,难道这台笔记本真的和ESP IDF无缘了吗?难道我就要换种方案了吗?

忽然想起来,昨天不是有个能跑起来的吗?(不知道怎么触发但是能够自动内联到esp-idf的头文件)那为什么不把昨天的研究一下,看看系统自动配置是怎么解决问题的。然后发现,系统弹出选项后的.json文件是不一样的,如下面的代码块:

//先使用 control+shift+p 搜索并点击:C/C++编辑配置(JSON)
//然后会发现出现了.vscode文件夹
//使用下面的代码替换 c_cpp_properities.json 文件里面的代码

{
    "configurations": [
        {
            "name": "ESP-IDF",
            "compilerPath": "C:\\Espressif\\tools\\riscv32-esp-elf\\esp-2021r2-8.4.0\\riscv32-esp-elf\\bin\\riscv32-esp-elf-gcc.exe",
            "cStandard": "c11",
            "cppStandard": "c++17",
            "includePath": [
                "${config:idf.espIdfPath}/components/**",
                "${config:idf.espIdfPathWin}/components/**",
                "${config:idf.espAdfPath}/components/**",
                "${config:idf.espAdfPathWin}/components/**",
                "${workspaceFolder}/**"
            ],
            "browse": {
                "path": [
                    "${config:idf.espIdfPath}/components",
                    "${config:idf.espIdfPathWin}/components",
                    "${config:idf.espAdfPath}/components/**",
                    "${config:idf.espAdfPathWin}/components/**",
                    "${workspaceFolder}"
                ],
                "limitSymbolsToIncludedHeaders": false
            }  
        }
    ],
    "version": 4
}

        复制粘贴后,完美解决了,于是将其存为副本,未来保命使用。

一个月后更新的新方法:

        发现遇到这个问题的朋友还挺多的,交流之后又碰撞出了新的解决方案:

  • 强上地址索引法(直接加绝对地址)

vscode找不到头文件,基于ESP32的物联网开发设计,vscode,ide,编辑器

  • 修改componet中的cmakelist法(神奇且有效)vscode找不到头文件,基于ESP32的物联网开发设计,vscode,ide,编辑器

 

②Cmake插件出现问题

按照流程配置好环境的时候,一般会自动下载一个Cmake tools,这个插件有时可能会出现意料之外的错误,可以在插件里面找到Cmake tools--右键 禁用工作区 再试一下。

小结

整体的环境搭建来说还是比较顺利的,没有遇到非常奇怪的bug,不过相较于STM32的环境配置还是要麻烦一些,目前板子还没到,所以这两天先预热一下^ ^,下一篇会对整理《ESP32-C物联网开发实战》对原理和一些基础的代码板块进行分析。文章来源地址https://www.toymoban.com/news/detail-806161.html

到了这里,关于0·ESP IDF搭建VScode环境踩坑记(找不到头文件)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • vscode+esp-idf 搭建esp32开发环境,编译信息中文乱码

    1.修改波特率 2.C:UsersAdministrator.vscodeextensionsvsciot-vscode.vscode-arduino-0.6.0-win32-x64outsrccommon  打开文件 util.js 屏蔽掉这部分的代码 、  

    2024年02月10日
    浏览(52)
  • vscode已配置includepath但找不到头文件

    在配置 includePath 后如果仍然找不到头文件,可能是因为以下原因之一: includePath 路径配置错误,请检查路径是否正确。 头文件所在目录未包含在 includePath 中,请确认所有需要的目录都已添加。 头文件名称拼写错误或者文件丢失,请检查文件名称是否正确。 编译器配置问题

    2024年02月14日
    浏览(38)
  • 【ESP32填坑日记】环境篇① 一站式VScode+ESP-IDF搭建教程,附带Python出错填坑经验

    VScode+ESP-IDF开发环境搭建教程,附带Python和Git安装教程、安装出错踩坑经验、最新版安装包,文末附带神奇的免安装版!! 巨详细一站式VScode+ESP-IDF的开发环境搭建教程,附带Python和Git安装教程、安装出错踩坑经验,以及免安装版,小白跟我无脑操作也能一次点亮,文章最后附最

    2024年02月04日
    浏览(67)
  • linux上vscode中.cpp文件中引入头文件.hpp时报错:找不到头文件(启用错误钵形曲线)

    当在 .cpp 文件中引入系统给定的头文件时: #include iostream 或者引入自定义的头文件 : #include success.hpp 报错:找不到相应的头文件,即在引入头文件的改行底下标出红波浪线 解决方法为: 🚩首先:稳住不要慌,深吸一口气 😏 😏 😏 😏 😏 😏 😏 😏 😏 😏 😏 😏 😏 😏

    2024年02月10日
    浏览(44)
  • VSCode安装Esp-IDF开发环境(pip version)出错解决办法

    可以看出是 pip版本问题 ,所以只需要在安装程序使用pip命令之前,完成pip的升级即可。 好像下载4点几的版本会出现此警告,导致安装失败;而下面安装5.0.1版本的时候同样出现了此警告,但是能够安装成功。 在VSCode扩展中找到Esp-IDF插件,点击卸载按钮。 注意:此时并没有

    2024年02月08日
    浏览(69)
  • 使用一键安装工具快速搭建 ESP-IDF 开发环境 (Windows)

    我们收到用户对 ESP-IDF SDK 软件开发环境感到搭建难、门槛高的反馈。为解决用户在此方面的问题。为此,我们推出本期教程介绍在 Windows 操作系统下使用一键安装工具快速搭建 ESP-IDF 开发环境。 您可以观看下面的教程视频,也可以阅读接下来本篇的图文教程。 【乐鑫教程】

    2024年02月09日
    浏览(82)
  • vscode运行C语言踩坑记

    本文对Vscode运行C语言代码报错进行整理,重点是头文件路径正确仍然报错找不到路径的解决办法。 需要注意,VScode本身不具有编译运行代码能力,所以需要先安装对应的编译环境并下载插件。已安装编译器软件的可以参考如下连接进行配置: Visual Studio Code(VSCode)调用Dev C编译

    2024年01月16日
    浏览(45)
  • 使用 VS Code 快速搭建 ESP-IDF 开发环境 (Windows、Linux、MacOS)

    ESP-IDF 是乐鑫官方的物联网开发框架,适用于 ESP32、ESP32-S、ESP32-C 和 ESP32-H 系列 SoC。它基于 C/C++ 语言提供了一个自给自足的 SDK,方便用户在这些平台上开发通用应用程序,并集成了大量的软件组件,包括 RTOS、外设驱动程序、网络栈、多种协议实现技术以及常见应用程序的使

    2024年02月14日
    浏览(68)
  • Qt提升自定义控件,找不到头文件

    解决方案:去掉全局包含(只想解决问题的看到这应该就可以解决了,下面是原因分析) 原因分析:双击查看找不到的头文件,发现是includeSearchEdit.h,这里注意,include这种方式头文件不是从当前项目去查找头文件,而是从QT的include头文件去找,这当然找不到,所以我手动改为

    2024年02月12日
    浏览(43)
  • 关于QT控件提升后找不到头文件的解决方法

    今天跟着教程走,学到QWidget绘制,需要提升控件,但是按照老师的操作做完之后发现出现找不到头文件的bug,在网上查了下说是不能勾选全局包含,我去掉之后还是找不到头文件,再查发现需要再PRO文件里添加头文件目录的包含,但是目前QT好像已经没有PRO文件了,只能在

    2024年02月12日
    浏览(78)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包