Windows系统下Eclipse搭建ESP32编译环境

Posted 极客飓风

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Windows系统下Eclipse搭建ESP32编译环境相关的知识,希望对你有一定的参考价值。

一、准备软件与环境

  • esp32_win32_msys2_environment_and_toolchain-20181001
  • esp-idf_3.3.1
  • eclipse C/C++
  • python 3.8
  • git

二、安装过程

1. 首先安装python3.8 与git

下载好python3.8 与git的windows安装包一路默认安装即可;

2. esp32_win32_msys2_environment_and_toolchain-20181001解压

将esp32_win32_msys2_environment_and_toolchain-20181001解压至C盘中:

3. 将esp-idf_3.3.1解压至C:\\msys32\\home\\developer\\esp\\esp-idf(需要自己创建该文件夹)目录中

 4. 添加环境变量 IDF_PATH(ESP-IDF 的路径)与 python环境变量 至windows系统中。

此外,还需要进一步安装python依赖包:(C盘目录根据自己安装情况进行更改)

python -m pip install --user -r C:\\msys32\\home\\developer\\esp\\esp-idf\\requirements.txt

5. 安装 Eclipse C/C++。

6. 将github等自己需要的项目解压到c:\\msys32\\home\\developer\\esp\\文件夹。

三、将项目导入Eclipse

  • Eclipse 使用了 ESP-IDF 中的 Makefile 支持。这意味着您需要从创建 ESP-IDF 项目开始。您可以使用 github 中的 idf-template 项目,或者打开 esp-idf examples 子目录中的示例之一。
  • Eclipse 运行后,选择 File -> Import...
  • 在弹出的对话框中,选择“C/C++”->“Existing Code as Makefile Project”,点击Next。
  • 在下一页上,输入“Existing Code Location”作为您的 IDF 项目的目录。不要指定 ESP-IDF 目录本身的路径(稍后提供)。您指定的目录应包含一个名为“Makefile”的文件(项目 Makefile)。
  • 在同一页面上,在“用于索引器设置的工具链”下选择“跨 GCC”。然后单击完成。

项目属性

  • 新项目将出现在 Project Explorer 下。右键单击项目并从上下文菜单中选择属性。
  • 单击“C/C++ Build”下的“Environment”属性页面。单击“添加...”并输入名称BATCH_BUILD和值1
  • 再次单击“添加...”,然后输入名称IDF_PATH。该值应该是安装 ESP-IDF 的完整路径。Windows 用户可以IDF_PATH从 Windows 资源管理器中复制。
  • 编辑PATH环境变量。保留当前值,并将路径附加到作为 IDF 设置的一部分安装的 Xtensa 工具链,如果这尚未在 PATH 中列出。工具链的典型路径如下所示/home/user-name/esp/xtensa-esp32-elf/bin。请注意,您需要:在附加路径之前添加一个冒号。Windows 用户需要预先C:\\msys32\\mingw32\\bin;C:\\msys32\\opt\\xtensa-esp32-elf\\bin;C:\\msys32\\usr\\bin添加PATH环境变量(如果您将 msys32 安装到不同的目录,那么您需要更改这些路径以匹配)。
  • 在 macOS 上,添加一个PYTHONPATH环境变量并将其设置为/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages. 这样一来,在安装步骤中安装了 pyserial 的系统 Python 会覆盖任何内置的 Eclipse Python。

附加说明:如果 IDF_PATH 目录或项目目录位于C:\\msys32\\home目录外,则必须在 C/C++ 构建属性中提供自定义构建命令:(请注意,此方法可能会显着增加构建时间。)python ${IDF_PATH}/tools/windows/eclipse_make.py

导航到“C/C++ General”->“Preprocessor Include Paths”属性页:

  • 单击“提供商”选项卡
  • 在提供程序列表中,单击“CDT Cross GCC Built-in Compiler Settings”。将“获取编译器规范的命令”更改为.xtensa-esp32-elf-gcc ${FLAGS} -std=c++11 -E -P -v -dD "${INPUTS}"
  • 在提供程序列表中,单击“CDT GCC Build Output Parser”并将“Compiler command pattern”更改为 xtensa-esp32-elf-(gcc|g\\+\\+|c\\+\\+|cc|cpp|clang)

导航到“C/C++ General”->“Indexer”属性页:

  • 选中“启用项目特定设置”以启用此页面上的其余设置。
  • 取消选中“允许包含的启发式解析”。启用此选项后,Eclipse 有时无法找到正确的头目录。

导航到“C/C++ Build”->“Behavior”属性页:

  • 选中“启用并行构建”以并行启用多个构建作业。

四、make menuconfig

在Eclipse编译之前,需要首先使用C:\\msys32\\msys2.exe来构建项目结构,否则直接在Eclipse中编译会报错无法编译。

点击打开msys2,进入项目文件夹:

cd /home/developer/esp/project_esp32_v1

然后执行:

make menuconfig

 

 等待项目构建,会进入界面:

 这时需要配置烧录的串口号:选择Serial flasher config 进入之后查看自己ESP32所用的串口并且在此界面下更改:COM9,然后OK,退出配置界面。

 五、返回Eclipse编译与烧录

上述步骤四构建成功后,关闭cmd命令行界面,返回eclipse软件:

 编译成功后。准备烧录项目:

  • 在 Project Explorer 中右键单击您的项目(重要的是确保您选择的是项目,而不是项目中的目录,否则 Eclipse 可能会找到错误的 Makefile。)
  • 从上下文菜单中选择 Build Targets -> Create...。
  • 输入“flash”作为目标名称。将其他选项保留为默认值。
  • 现在您可以使用 Project -> Build Target -> Build (Shift+F9) 来构建自定义闪存目标,这将编译和闪存项目。

请注意,您需要使用“make menuconfig”来设置串行端口和其他用于闪烁的配置选项。“make menuconfig”仍然需要命令行终端(请参阅适用于您平台的说明。)

 

 烧录成功!

 有任何问题欢迎交流与联系,微信estorm22

开始制作基于ESP32的项目,go~ 

以上是关于Windows系统下Eclipse搭建ESP32编译环境的主要内容,如果未能解决你的问题,请参考以下文章

ESP32 ESP-IDF开发环境搭建,Windows下基于ESP-IDF | Cmake | VScode插件的 ESP32 开发环境搭建

ESP32 windows开发环境的搭建(官方方法)

Windows & Esp32基于 libjpeg-9e 编解码库的视频播放器

Linux下搭建 ESP-IDF 开发环境,适合ESP32/ESP32S2/ESP32C3/ESP32S3系列模组二次开发

ubuntu系统搭建ESP32 开发环境

linux下使用eclipse打开esp32工程文件,并进行编译下载。