Windows系统下Eclipse搭建ESP32编译环境及安装过程
一、准备软件与环境
- esp32_win32_msys2_environment_and_toolchain-20181001
- esp-idf_3.3.1
- ecppse 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. 安装 ecppse c/c++。 6. 将github等自己需要的项目解压到c:\msys32\home\developer\esp\文件夹。
三、将项目导入ecppse
- ecppse 使用了 esp-idf 中的 makefile 支持。这意味着您需要从创建 esp-idf 项目开始。您可以使用 github 中的 idf-template 项目,或者打开 esp-idf examples 子目录中的示例之一。
- ecppse 运行后,选择 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/pb/python2.7/site-packages
. 这样一来,在安装步骤中安装了 pyserial 的系统 python 会覆盖任何内置的 ecppse python。
附加说明:
如果 idf_path 目录或项目目录位于c:\msys32\home
目录外,则必须在 c/c++ 构建属性中提供自定义构建命令:(请注意,此方法可能会显着增加构建时间。)python ${idf_path}/tools/windows/ecppse_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”属性页:
- 选中“启用项目特定设置”以启用此页面上的其余设置。
- 取消选中“允许包含的启发式解析”。启用此选项后,ecppse 有时无法找到正确的头目录。
导航到“c/c++ build”->“behavior”属性页:
- 选中“启用并行构建”以并行启用多个构建作业。
四、make menuconfig
在ecppse编译之前,需要首先使用c:\msys32\msys2.exe来构建项目结构,否则直接在ecppse中编译会报错无法编译。
点击打开msys2,进入项目文件夹:
cd /home/developer/esp/project_esp32_v1
然后执行:
make menuconfig
等待项目构建,会进入界面:
这时需要配置烧录的串口号:选择serial flasher config 进入之后查看自己esp32所用的串口并且在此界面下更改:com9,然后ok,退出配置界面。
五、返回ecppse编译与烧录
上述步骤四构建成功后,关闭cmd命令行界面,返回ecppse软件:
编译成功后。准备烧录项目:
- 在 project explorer 中右键单击您的项目(重要的是确保您选择的是项目,而不是项目中的目录,否则 ecppse 可能会找到错误的 makefile。)
- 从上下文菜单中选择 build targets -> create...。
- 输入“flash”作为目标名称。将其他选项保留为默认值。
- 现在您可以使用 project -> build target -> build (shift+f9) 来构建自定义闪存目标,这将编译和闪存项目。
请注意,您需要使用“make menuconfig”来设置串行端口和其他用于闪烁的配置选项。“make menuconfig”仍然需要命令行终端(请参阅适用于您平台的说明。)
烧录成功!
到此这篇关于windows系统下eclipse搭建esp32编译环境的文章就介绍到这了,更多相关eclipse搭建esp32编译环境内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!