ESP32 Eclipse开发环境构建与问题总结
搞了一个多星期的eclipse环境构建,终于成功了,在此记录下期间遇到的问题。
以下为遇到的几点问题的解决方法:
1、使用的版本为V3.1版本,版本时间为2018年09月07日,可以直接在以下路径下载(下载路径的版本之后肯定会升级,不一定是V3.1了)
https://www.espressif.com/zh-hans/support/download/sdks-demos?keys=&field_type_tid%5B%5D=13
2、安装的说明文档还是依照官方提供的安装步骤进行的,网址如下:
https://docs.espressif.com/projects/esp-idf/zh_CN/stable/get-started/index.html
3、安装过程中需要git IDF可以不用GIT,直接用第一步下载的V3.1版本的包解压到指定目录即可

也就是文档中提到的 git clone 这一步可以不用做,直接把下载下来的IDF解压到esp当中
4、需要设置下IDF的路径,方法如下(官方文档中有):
Windows
用户配置文件脚本存放在 C:/msys32/etc/profile.d/ 目录中。每次打开 MSYS2 窗口时,系统都执行这些脚本。
在
C:/msys32/etc/profile.d/目录下创建一个新的脚本文件。将其命名为export_idf_path.sh。确定 ESP-IDF 目录的路径。路径与系统配置有关,例如
C:\msys32\home\user-name\esp\esp-idf。在脚本中加入
export命令,e.g.:export IDF_PATH="C:/msys32/home/user-name/esp/esp-idf"
请将原始 Windows 路径中将反斜杠替换为正斜杠。
保存脚本。
关闭 MSYS2 窗口并再次打开。输入以下命令检查是否设置了
IDF_PATH:printenv IDF_PATH
将此前在脚本文件中输入的路径打印出来。
如果您不想在用户配置文件中永久设置 IDF_PATH,则应在打开 MSYS2 窗口时手动输入:
export IDF_PATH="C:/msys32/home/user-name/esp/esp-idf"
如您在安装用于 ESP32 开发的软件时,从 设置 ESP-IDF 路径 小节跳转到了这里,请返回到 创建一个工程 小节。
5、在Eclipse当中的设置也按照文档中的说明进行设置,大致需要设置以下几点:
https://docs.espressif.com/projects/esp-idf/zh_CN/latest/get-started/eclipse-setup.html
项目属性
新项目将出现在 “Project Explorer” 下。请右键选择该项目,并在菜单中选择 “Properties”。
点击 “C/C++ Build” 下的 “Environment” 属性页,选择 “Add…”,并在对应位置输入
BATCH_BUILD和1。再次点击 “Add…”,并在 “IDF_PATH” 中输入 ESP-IDF 所在的完整安装路径。
选择 “PATH” 环境变量,不要改变默认值。如果 Xtensa 工具链的路径尚不在 “PATH” 列表中,则应将该路径 (
something/xtensa-esp32-elf/bin) 增加至列表。在 macOS 平台上,增加一个 “PYTHONPATH” 环境变量,并将其设置为
/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages, 保证系统中预先安装的 Python (需安装 pyserial 模块)可以覆盖 Eclipse 内置的任何 Python。前往 “C/C++ General” -> “Preprocessor Include Paths” 属性页面。
点击 “Providers” 选项卡。
- 从 “Providers” 列表中选择 “CDT Cross GCC Built-in Compiler Settings”,将 “Command to get compiler specs” 修改为
xtensa-esp32-elf-gcc ${FLAGS} -std=c++11 -E -P -v -dD "${INPUTS}" - 从 “Providers” 列表中选择 “CDT GCC Build Output Parser”,将 “Compiler command pattern” 修改为
xtensa-esp32-elf-(gcc|g\+\+|c\+\+|cc|cpp|clang)
- 从 “Providers” 列表中选择 “CDT Cross GCC Built-in Compiler Settings”,将 “Command to get compiler specs” 修改为
前往 “C/C++ General” -> “Indexer” 属性页面。
- 去除 “Allow heuristic resolution of includes” 勾选。启用此选项时,Eclipse 有时无法找到正确的头文件目录。
点击 “C/C++ General” -> “Indexer” 属性页。
- 选择 “Enable project specific settings” 以启用本页上的其他设置。
注解
取消选中 “Allow heuristic resolution of includes”。因为启用此选项时,有时会导致 Eclipse 无法找到正确的头文件目录。
点击 “C/C++ Build” -> “Behavior” 属性页。
- 选中 “Enable parallel build” 以启用多任务并行构建。
6、在文档中提到了一条,更新python软件包,途中可能遇到错误提示,我并没有理会错误提示,后面的步骤也能操作成功,但若不成功的情况下,可能需要先解决
错误才能进行后续操作:

7、在Eclipse当中直接最后的make flash烧录命令前,需要先在mingw32.exe当中执行make menuconfig命令配置串口等数据,然后还要在mingw32.exe当中执行一遍make flash命令,
最后才能在eclipse当中进行操作执行make flash
8、关于IDF当中的例子,需要把例子复制到esp目录下(也就是与idf同级目录下)进行编译,否则可能会提示路径不对等错误
以上几点是在架设ESP32开发环境中遇到的几点问题,特记录下来以备后续查找用
ESP32 Eclipse开发环境构建与问题总结的更多相关文章
- ESP32 windows开发环境的搭建(官方方法)
首先保证电脑中的已经下载了git客户端,没有的自行去https://git-scm.com/下载 STEP1: 获得编译工具链 Windows没有内置的“make”环境,所以安装工具链你将需要一个兼容 ...
- 使用Git下载Hadoop的到本地Eclipse开发环境
使用Git下载Hadoop的到本地Eclipse开发环境 博客分类: Hadoop *n*x MacBook Air hadoopgitmaveneclipsejava 问题场景 按照官网http: ...
- 突破瓶颈,对比学习:Eclipse开发环境与VS开发环境的调试对比
曾经看了不少Java和Android的相关知识,不过光看不练易失忆,所以,还是写点文字,除了加强下记忆,也证明我曾经学过~~~ 突破瓶颈,对比学习: 学习一门语言,开发环境很重,对于VS的方形线条开发 ...
- zookeeper Eclipse 开发环境搭建及简单示例
一,下载Zookeeper安装包 从官方网站下载稳定版安装包后,解压. 其中ZK_HOME 为:D:\Program Files\zookeeper-3.4.9 二,启动Zookeeper Serve ...
- 配置Hadoop的Eclipse开发环境
前言 在先前的文章中,已经介绍了如何在Ubuntu Kylin操作系统下搭建Hadoop运行环境,而现在将在之前工作的基础上搭建Eclipse开发环境. 配置 开发环境:Eclipse 4.2 其他同 ...
- [转]MonkeyRunner在Windows下的Eclipse开发环境搭建步骤(兼解决网上Jython配置出错的问题)
MonkeyRunner在Windows下的Eclipse开发环境搭建步骤(兼解决网上Jython配置出错的问题) 网上有一篇shangdong_chu网友写的文章介绍如何在Eclipse上配置M ...
- 大数据应用之Windows平台Hbase客户端Eclipse开发环境搭建
大数据应用之Windows平台Hbase客户端Eclipse开发环境搭建 大数据应用之Windows平台Hbase客户端Eclipse环境搭建-Java版 作者:张子良 版权所有,转载请注明出处 引子 ...
- 配置hadoop-1.2.1 eclipse开发环境
写这篇文章的目的是记录解决配置过程中的问题 首先我们先看下这篇博文 配置hadoop-1.2.1 eclipse开发环境 但是在[修改 Hadoop 源码]这里,作者发布的 hadoop-core-1 ...
- Eclipse开发环境debug模式调试断点从jar跳到源码
Eclipse开发环境debug模式调试断点从jar跳到源码 说明:本案例使用jsch-0.1.54.jar和源码做test,项目分成两个,一个是jsch的源码,另一个是测试案例 一.下载JSch.的 ...
随机推荐
- C# 泛型单例
不支持非公共的无参构造函数的 public abstract class BaseInstance<T> where T : class,new() { private readonly ...
- hibernate之事务处理
四个方面:事务的性质,事物的隔离级别,hibernate配置事务的隔离级别,使用事务小案例 1. 事务的性质: 四种性质:原子性,一致性,隔离性,持久性. 原子性:原子,不可再分.一个操作不能分为更小 ...
- rootkit后门检测工具
1. 关于rootkit rootkit是Linux平台下最常见的一种木马后门工具,它主要通过替换系统文件来达到入侵和和隐蔽的目的,这种木马比普通木马后门更加危险和隐蔽,普通的检测工具和检查手段很难发 ...
- 「luogu2569」[ZJOI2006] 书架
「luogu2569」[ZJOI2006]书架 题目大意 给定一个长度为 \(n\) 序列,序列中第 \(i\) 个元素有编号 \(a_i(a_i \in \Z \cap [1,n])\),需要支持五 ...
- 什么时候Python的List,Tuple最后一个Item后面要加上一个逗号
为什么看Python的代码,有时候会在数据结构的最后一项末尾加上逗号.直接来看,这个逗号很多余. 根据PEP81的解释: Trailing commas are usually optional, e ...
- Mark SDL2 Lazy Foo's Producations
重点 初学SDL2,此处为笔记.有错误还请指出. 13)When our SDL 2 application runs, the operating system needs to be able t ...
- springboot接口返回封装与异常控制
首先,返回有两个状态,status和code status标识response的状态,有2个值:0成功,-1服务错误. code跟业务有关,可以有各种数值,99999服务未知异常,10000参数异常, ...
- goland 文件头自动注释
1 代码 /** * @Author: ${USER} * @Description: * @File: ${NAME} * @Version: 1.0.0 * @Date: ${DATE} ${TI ...
- PHP获取汉字首字母并分组排序
<?php /** * 错误状态码定义 * User: xiucai * Date: 2018/3/11 * Time: 12:23 */ namespace extend; class Wor ...
- 2、jenkins+svn自动发布和回滚
Jenkins配置回滚思路: 目前只能实现使用salt来管控配置文件的管控,配置文件的版本回滚需要后续定制化开发,或者进行格外其他的管理操作.后续实现 以下配置可以为每个项目备份构建文件到本地指定路径 ...