可下载的 ESP-IDF 工具
构建过程中,ESP-IDF 依赖许多工具,如交叉编译工具链、CMake 构建系统等。
如 快速入门 所述,若所需工具版本可用,首选使用当前操作系统的软件包管理器(如 apt、yum、brew 等)安装相关工具。例如,在 Linux 和 macOS 系统中,建议用 Linux 和 macOS 系统的软件包管理器安装 CMake。
但部分 ESP-IDF 的特定工具在操作系统软件包存储库中不可用,且不同版本的 ESP-IDF 需相应使用不同版本的工具运行。为解决以上两个问题,ESP-IDF 提供了一组脚本,可以下载和安装正确的工具版本,并设置相应运行环境。
下文中,这类可下载的工具简称为“工具”。除此类工具外,ESP-IDF 还使用以下工具:
ESP-IDF 捆绑的 Python 脚本,如
idf.py
从 PyPI 安装的 Python 软件包
以下各小节介绍了可下载工具的安装方法,并提供了在不同平台上安装的工具列表。
工具元数据文件
各平台所需工具及工具版本列表存放在 tools/tools.json 文件中,tools/tools_schema.json 定义了该文件的模式。
在安装工具或设置环境变量时,tools/idf_tools.py 脚本将使用上述文件。
工具安装目录
IDF_TOOLS_PATH
环境变量指定下载及安装工具的位置。若未设置该变量,Linux 和 macOS 系统的默认下载安装位置为 HOME/.espressif
,Windows 系统的默认下载安装位置为 %USER_PROFILE%\.espressif
。
在 IDF_TOOLS_PATH
目录下,工具安装脚本会创建以下子目录和文件:
dist
— 工具存档下载位置。tools
— 工具解压缩位置。工具会解压缩到子目录tools/TOOL_NAME/VERSION/
中,该操作支持同时安装不同版本的工具。idf-env.json
— “目标 (target)”和“功能 (feature)”等用户安装选项均存储在此文件中。“目标”为选择需要安装和保持更新的工具的芯片目标;“功能”则决定应安装哪些 Python 软件包。有关用户安装选项的详情,请参阅下文。python_env
— 与工具无关;虚拟 Python 环境安装在其子目录中。注意,设置IDF_PYTHON_ENV_PATH
环境变量可以将 Python 环境目录放置到其他位置。espidf.constraints.*.txt
— 每个 ESP-IDF 版本都有的约束文件,包含 Python 包版本要求。
GitHub 资源镜像
工具下载器下载的工具大多属于 GitHub 发布的资源,即在 GitHub 上伴随软件发布的文件。
如果无法访问 GitHub 下载或访问速度较慢,可以配置一个 GitHub 资源镜像。
要使用乐鑫下载服务器,请将环境变量 IDF_GITHUB_ASSETS
设置为 dl.espressif.com/github_assets
,在国内下载时,也可设置为 dl.espressif.cn/github_assets
加快下载速度。安装过程中,当从 github.com
下载工具时,URL 将重写为使用乐鑫下载服务器。
只要 URL 与 github.com
的下载 URL 格式匹配,任何镜像服务器均可使用,安装过程中下载的 GitHub 资源 URL 将把 https://github.com
替换为 https://${IDF_GITHUB_ASSETS}
。
备注
目前,乐鑫下载服务器不会镜像 GitHub 上的所有内容,只镜像部分发布版本的附件资源文件及源文件。
idf_tools.py
脚本
ESP-IDF 随附的 tools/idf_tools.py 脚本具备以下功能:
install
:将工具下载到${IDF_TOOLS_PATH}/dist
目录,并解压缩到${IDF_TOOLS_PATH}/tools/TOOL_NAME/VERSION
。install
命令接收TOOL_NAME
或TOOL_NAME@VERSION
格式的安装工具列表。如果给定参数all
,则会安装列表上的所有工具,包括必须项和可选项。如果没有给定参数,或给定参数为required
,则只安装必须项。download
:与install
类似,但不会解压缩工具。使用可选项--platform
可下载特定平台的工具。export
:列出使用已安装工具前应设置的环境变量。对多数工具而言,只需要设置环境变量PATH
,但也有些工具需要设置额外的环境变量。环境变量可以以
shell
或key-value
格式列出,使用--format
参数设置该选项。export
可选参数:--unset
:该参数可用于创建语句,取消特定全局变量设置,使环境恢复到调用export.{sh/fish}
前的状态。--add_paths_extras
:该参数将$PATH
中与 ESP-IDF 相关的额外路径添加到${IDF_TOOLS_PATH}/esp-idf.json
中,以保证在退出当前 ESP-IDF 环境时删除全局变量。例如,在运行export.{sh/fish}
脚本时,如果在全局变量$PATH
中添加了新的路径,在命令中添加该参数可以将这些新路径保存到${IDF_TOOLS_PATH}/esp-idf.json
文件中。
shell
:生成适合在 shell 中执行的输出,例如,在 Linux 和 macOS 上生成以下输出export PATH="/home/user/.espressif/tools/tool/v1.0.0/bin:$PATH"
在 Windows 上生成以下输出
set "PATH=C:\Users\user\.espressif\tools\v1.0.0\bin;%PATH%"
备注
当前不支持以 Powershell 格式导出环境变量,可以用
key-value
格式代替。如果 shell 支持,则该命令的输出可用于更新环境变量。例如
eval $($IDF_PATH/tools/idf_tools.py export)
key-value
:以VARIABLE=VALUE
格式生成输出,以便其他脚本解析PATH=/home/user/.espressif/tools/tool/v1.0.0:$PATH
注意,用于处理此输出的脚本必须对输出中的
$VAR
或%VAR%
模式进行扩展,即解析成对应变量。
list
:列出已知的工具版本,并指示哪些版本已安装。以下选项可用于自定义输出。
--outdated
:仅列出安装在IDF_TOOLS_PATH
中的过时版本工具。
check
:检查每个工具是否在系统路径和IDF_TOOLS_PATH
中可用。install-python-env
:在${IDF_TOOLS_PATH}/python_env
目录或直接在IDF_PYTHON_ENV_PATH
环境变量设置的目录中创建 Python 虚拟环境,并在其中安装所需的 Python 软件包。参数
--features
为可选项,用于指定要添加或删除的功能列表,功能之间用逗号分隔。该参数将删除以
-
开头的功能,添加以+
开头或无符号标记的功能。例如,要删除功能XY
,示例语法为--features=-XY
;要添加功能XY
,示例语法为--features=+XY
或--features=XY
。如果为同一功能同时提供了删除和添加选项,则不执行任何操作。每个功能都必须有依赖文件。例如,只有当
${IDF_PATH}/tools/requirements/requirements.XY.txt
文件已存在,并包含要安装的 Python 包列表时,功能XY
才有效。core
功能为必须项,确保 ESP-IDF 的核心功能,如控制台中的构建、烧录、监视器、调试等。用户可选择任意数量的可选功能,已选功能列表存储在
idf-env.json
中。依赖文件中存储了需要安装的 Python 包以及
espidf.constraints.*.txt
文件,该约束文件从 https://dl.espressif.com 下载,并存储在${IDF_TOOLS_PATH}
目录,包含了针对特定 ESP-IDF 版本的安装包版本要求。
备注
可以通过使用
--no-constraints
参数或将环境变量IDF_PYTHON_CHECK_CONSTRAINTS
设置为no
,禁用约束文件的下载和使用,但 并不建议此做法。check-python-dependencies
:检查所有必需的 Python 包是否均已安装。该命令会对比检查由idf-env.json
功能列表从${IDF_PATH}/tools/requirements/requirements.*.txt
所选择的软件包与espidf.constraints.*.txt
文件指定的软件包版本是否一致。备注
约束文件可通过
install-python-env
命令下载。与install-python-env
命令类似,可以通过使用--no-constraints
参数或将环境变量IDF_PYTHON_CHECK_CONSTRAINTS
设置为no
,禁止使用约束文件。uninstall
:打印并删除当前 ESP-IDF 版本未使用的工具。--dry-run
打印已安装但未使用的工具。--remove-archives
删除过去下载的所有旧版本软件安装包。
安装脚本
ESP-IDF 的根目录中提供了针对不同 shell 的用户安装脚本,包括:
install.bat
适用于 Windows 命令提示符install.ps1
适用于 Powershellinstall.sh
适用于 Bashinstall.fish
适用于 Fish
这些脚本除了下载和安装 IDF_TOOLS_PATH
中的工具外,还会准备一个 Python 虚拟环境,并在此虚拟环境中安装所需软件包。
为启用相应功能,这些脚本可以选择性地接受一组以逗号分隔的芯片目标列表及 --enable-*
参数,这类参数会传递给 idf_tools.py
脚本,并由该脚本将这类参数存储在 idf-env.json
中,从而逐步启用芯片目标及功能。
要为所有芯片目标安装工具,请在不使用任何可选参数的情况下,运行 idf_tools.py install --targets=all
。要安装具备 ESP-IDF 核心功能的 Python 软件包,请运行 idf_tools.py install-python-env --features=core
。
也可为特定芯片安装工具,例如,运行 install.sh esp32
可以只为 ESP32 安装工具。更多相关示例,请参阅 第三步:设置工具。
运行 idf_tools.py install-python-env --features=core,XY
,install.sh --enable-XY
可以启用 XY
功能。
导出脚本
由于安装好的工具并非永久添加到用户或系统的 PATH
环境变量中,因此,要在命令行中使用这些工具,还需要额外步骤。以下脚本会修改当前 shell 的环境变量,从而使用正确版本的工具:
export.bat
适用于 Windows 命令提示符export.ps1
适用于 Powershellexport.sh
适用于 Bashexport.fish
适用于 Fish
备注
在 Bash 中修改 shell 环境时,必须使用 . ./export.sh
命令加载 export.sh
,注意添加前面的点和空格。
export.sh
可以在除了 Bash 外的其他 shell(如 zsh)中使用。但在这种情况下,必须在运行脚本前设置 IDF_PATH
环境变量。在 Bash 中使用时,脚本会从当前目录猜测 IDF_PATH
的值。
除了调用 idf_tools.py
,这些脚本还会列出已经添加到 PATH
的目录。
其他安装方法
为适用于不同环境,ESP-IDF 提供了更多用户友好的 idf_tools.py
包装工具:
ESP-IDF 工具安装器 支持下载和安装工具,其内部使用
idf_tools.py
实现功能。ESP-IDF Eclipse 插件 包括了一个用于设置工具的菜单项,该插件内部调用
idf_tools.py
。VSCode ESP-IDF 扩展 提供了设置工具的入门流程。尽管此扩展包不依赖
idf_tools.py
,但安装方法相同。
自定义安装
推荐用户使用上述方法安装 ESP-IDF 工具,但也可以选择其他方式来构建 ESP-IDF 应用程序。自定义安装时,用户需将所有必要的工具都安装在某个位置,并在 PATH
中定义,以保证 ESP-IDF 构建系统可用。
卸载 ESP-IDF
卸载 ESP-IDF 需要删除安装过程中配置的工具和环境变量。
使用 Windows ESP-IDF 工具安装器 的 Windows 用户可以直接运行卸载向导卸载 ESP-IDF。
工具安装目录 下包含了已下载及安装的工具,删除该目录即可删除此前通过运行 安装脚本 安装的内容。通过 导出脚本 设置的环境变量不具备永久性,新环境中不会存在此类环境变量。
如在安装过程中进行了自定义设置,除删除上述工具外,可能还涉及手动恢复此前为适用 ESP-IDF 工具而修改的环境变量及系统路径,例如
IDF_PYTHON_ENV_PATH
或IDF_TOOLS_PATH
。如存在通过手动复制安装的工具,则也需手动追踪并删除相关文件。如安装了 ESP-IDF Eclipse 或 VSCode ESP-IDF 扩展程序 等插件,则需按照对应插件文档中的特定卸载说明进行操作。
备注
卸载 ESP-IDF 工具不会删除任何项目文件或用户代码。为防止意外丢失其他文件,请在删除文件时谨慎操作。如果对某个步骤的操作有所疑问,请参考前述安装说明。
上述卸载指南默认需卸载的工具是按本文档中的步骤进行安装的。如果使用了自定义安装,可能需要进行相应调整。
ESP-IDF 工具列表
xtensa-esp-elf-gdb
GDB for Xtensa
License: GPL-3.0-or-later
More info: https://github.com/espressif/binutils-gdb
Platform |
Required |
Download |
---|---|---|
linux-amd64 |
required |
SHA256: d056f2435ef05cccadac5d8fcefa3efd8f8c456c3d853f5eba1edb501acfe4f7 |
linux-arm64 |
required |
SHA256: 7fc9674cc4f4c5e7bc94ca05bc5deaaa4c4bbcc972a9caee6fcd6a872c804c02 |
linux-armel |
required |
SHA256: 68118ff36e9dd2284d92a7a529d0e2a8d20f6426036a0736fa1147935614ece2 |
linux-armhf |
required |
SHA256: 72d75d9bb9a09d0696aa86628b2dd1851755216b1b315743189ea37228e5c72f |
linux-i686 |
required |
SHA256: cf6cac8ed70726d390d30713d537754544872715e1b70a8a4a28b5dc616193b9 |
macos |
required |
SHA256: 417fcf8d1b596b9481603d6987def1d6cfcebdb9739f53940887334a7de855fa |
macos-arm64 |
required |
SHA256: 95d6ed2311d6a72bf349e152d096aeeb151f9c5989bfa3120facb1c99e879196 |
win32 |
required |
SHA256: 642b6a135c38ff1d5e54ad2c29469b769f8e1b101dab363d06101b02284bb979 |
win64 |
required |
SHA256: 2d958570ff6aa69ed32cbb076cbaf303349a26b3301a7c4628be8d7ad39cf9f1 |
riscv32-esp-elf-gdb
GDB for RISC-V
License: GPL-3.0-or-later
More info: https://github.com/espressif/binutils-gdb
Platform |
Required |
Download |
---|---|---|
linux-amd64 |
required |
SHA256: f0cf0821eaac7e8cf2c63b14f2b69d612f4f8c266b29d02d5547b7d7cbbd0e11 |
linux-arm64 |
required |
SHA256: 6812344dfb5c50a81d2fd8354463516f0aa5f582e8ab406cbaeca8722b45fa94 |
linux-armel |
required |
SHA256: b73042b8e1df5a3fc8008ec3cd000ef579f155d72a66c6ade1d48906d843e738 |
linux-armhf |
required |
SHA256: 9dc5334042a169606d32ee454d35d93d216a24df027e4b0830ab268a8999db2d |
linux-i686 |
required |
SHA256: 3f07a1b8dc87127a1a6bec6fbace4f8daca44755356f0692e9a5d4c8c4bfd81d |
macos |
required |
SHA256: bb139229f9a4998cab9cfb617d3ecb05b77cbfa9a3a59c54969035f1b4007487 |
macos-arm64 |
required |
SHA256: f6513b57f28245497f9c39a201f3f6444d4180e16b39765c629e01036286c0e6 |
win32 |
required |
SHA256: 8287fa2891e8d032e8283210048d653705791cda31504369418288d3e4753dd6 |
win64 |
required |
SHA256: 9debae1135df8f5868a9d945468f0480cdaab25f77ead6a55cc85142c4487abd |
xtensa-esp32-elf
Toolchain for Xtensa (ESP32) based on GCC
License: GPL-3.0-with-GCC-exception
More info: https://github.com/espressif/crosstool-NG
Platform |
Required |
Download |
---|---|---|
linux-amd64 |
required |
SHA256: 4d2e02ef47f1a93a4dcfdbaecd486adfaab4c0e26deea2c18d6385527f39f864 |
linux-arm64 |
required |
SHA256: 9e211a182b6ea0396a41c78f52f51d964e7875fe274ea9c81111bf0dbc90c516 |
linux-armel |
required |
SHA256: 2ddd91fb98b79b30042b7918eef60cf10c7bd5b1da853e83b65f293b96dec800 |
linux-armhf |
required |
SHA256: a683a468555dcbcb6ce32a190842110d6f853d4d6104d61cf0bc9dd50c6be1e6 |
linux-i686 |
required |
SHA256: 292b19ea6186508a923fb6fd0103977e001d4eb8e77836c7e3d6ce6e5fa7d305 |
macos |
required |
SHA256: b09d87fdb1dc32cd1d718935065ef931b101a14df6b17be56748e52640955bff |
macos-arm64 |
required |
SHA256: f50acab2b216e9475dc5313b3e4b424cbc70d0abd23ba1818aff4a019165da8e |
win32 |
required |
SHA256: 62bb6428d107ed3f44c212c77ecf24804b74c97327b0f0ad2029c656c6dbd6ee |
win64 |
required |
SHA256: 8febfe4a6476efc69012390106c8c660a14418f025137b0513670c72124339cf |
xtensa-esp32s2-elf
Toolchain for Xtensa (ESP32-S2) based on GCC
License: GPL-3.0-with-GCC-exception
More info: https://github.com/espressif/crosstool-NG
Platform |
Required |
Download |
---|---|---|
linux-amd64 |
required |
SHA256: a1bd8f0252aae02cff2c289f742fbdbaa2c24644cc30e883d118253ea4df1799 |
linux-arm64 |
required |
SHA256: 48e88053e92bab1bf8d6dbad7ddb4d140c537159d607a36e73e74e1f5f23c892 |
linux-armel |
required |
SHA256: 37cdd619fa56ce884570cedd00dd2f4a5eb9a1fce3755a2f4b9279d1136e47c1 |
linux-armhf |
required |
SHA256: 99a7b34e8826d0c0b5703e5a4e7db8716b9738fa4f03eed759f383a10617e788 |
linux-i686 |
required |
SHA256: d9b79e9e3204fa8e40f9942ea1197a83ae1527e3711a45bc17171ff5fec43e54 |
macos |
required |
SHA256: e7b2fbacd8186b24d1b1264ad6cf639f476d51f5d908fb79504abfe6281d3c8c |
macos-arm64 |
required |
SHA256: d2c997ce5f43a93c3787c224aa8742b0cd87443794514ab2153cd629665506f0 |
win32 |
required |
SHA256: 1e6dac5162ab75f94b88c47ebeabb6600c652fb4f615ed07c1724d037c02fd19 |
win64 |
required |
SHA256: 8a785cc4e0838cebe404f82c0ead7a0f9ac5fabc660a742e33a41ddac6326cc1 |
xtensa-esp32s3-elf
Toolchain for Xtensa (ESP32-S3) based on GCC
License: GPL-3.0-with-GCC-exception
More info: https://github.com/espressif/crosstool-NG
Platform |
Required |
Download |
---|---|---|
linux-amd64 |
required |
SHA256: 29b5ea6b30d98231f0c17f2327404109e0abf59b48d0f2890d9d9899678a89a3 |
linux-arm64 |
required |
SHA256: 30a1fed3ab6341feb1ae986ee55f227df6a594293ced13c65a0136eb4681087d |
linux-armel |
required |
SHA256: c180836bf43b90b4b7c24166a3bd4156c74c8e58bb85761aa58da98d076e6f48 |
linux-armhf |
required |
SHA256: 4cc1adee141de67ffb7e94e53d30bf4e120ef07d4063fecc2153c69ad4b54f7f |
linux-i686 |
required |
SHA256: 9a968f58085c66b41ca13af8d652e5250df0f8d8e17988e34846be9c76672cab |
macos |
required |
SHA256: 30375231847a9070e4e0acb3102b7d35a60448a55536bfa113c677c449da3eef |
macos-arm64 |
required |
SHA256: ae9a1a3e12c0b6f6f28a3878f5964e91a410350248586c90db94f8bdaeef7695 |
win32 |
required |
SHA256: 3ddf51774817e815e5d41c312a90c1159226978fb45fd0d4f7085c567f8b73ab |
win64 |
required |
SHA256: 1d15ca65e3508388a86d8bed3048c46d07538f5bc88d3e4296f9c03152087cd1 |
esp-clang
Toolchain for all Espressif chips based on clang
License: Apache-2.0
More info: https://github.com/espressif/llvm-project
Platform |
Required |
Download |
---|---|---|
linux-amd64 |
optional |
SHA256: 3dbd8dd290913a93e8941da8a451ecd49f9798cc2d74bb9b63ef5cf5c4fee37f |
linux-arm64 |
optional |
SHA256: 4b115af6ddd04a9bffc1908fc05837998ee71d450891d741c446186f2aa9b961 |
linux-armhf |
optional |
SHA256: 935082bb0704420c5ca42b35038bba8702135348a50cac454ae2fb55af0b4c32 |
macos |
optional |
SHA256: d9824acafd3e7b1d17ace084243b82a95bbdcb149a26b085bba487ab3d3716d7 |
macos-arm64 |
optional |
SHA256: ed5621396dc3e48413e14e8b6caed8e2993e7f2ab5fca1410081f40c940a1060 |
win64 |
optional |
SHA256: 598c8241c8bf10fd1be8bd21845307cfc404e127041b4ba4e828350a88692883 |
riscv32-esp-elf
Toolchain for 32-bit RISC-V based on GCC
License: GPL-3.0-with-GCC-exception
More info: https://github.com/espressif/crosstool-NG
Platform |
Required |
Download |
---|---|---|
linux-amd64 |
required |
SHA256: 21694e5ee506f5e52908b12c6b5be7044d87cf34bb4dfcd151d0a10ea09dedc1 |
linux-arm64 |
required |
SHA256: aefbf1e6f2c91a10e8995399d2003502e167e8c95e77f40957309e843700906a |
linux-armel |
required |
SHA256: 9740cbddb4cb5e05382991c83d8c96a5fb7d87046449e77791b3b0de29a3ddd8 |
linux-armhf |
required |
SHA256: ee6210b1068802ed8486543c1f313cb8ac64571c20d51bf50fdb34ad4c457018 |
linux-i686 |
required |
SHA256: 9207fe3d1413cf29fad6dc4bdc9a35f538b0b2c48a70e9a89d2f0e930c346aed |
macos |
required |
SHA256: 78cd1afe458fceb7c2657fe346edb0ecfde3b8743ccf7a7a7509c456cad9de9a |
macos-arm64 |
required |
SHA256: 6c0a4151afb258766911fc7bcfe5f4fee6ee2cd9a5ff25542bc1228c1203a3f9 |
win32 |
required |
SHA256: a5dfbb6dbf6fc6c6ea9beb2723af059ba3c5b2c86c2f0dc3b21afdc7bb229bf5 |
win64 |
required |
SHA256: 9deae9e0013b2f7bbf017f9c8135755bfa89522f337c7dca35872bf12ec08176 |
esp32ulp-elf
Toolchain for ESP32 ULP coprocessor
License: GPL-3.0-or-later
More info: https://github.com/espressif/binutils-gdb
Platform |
Required |
Download |
---|---|---|
linux-amd64 |
required |
SHA256: b1f7801c3a16162e72393ebb772c0cbfe4d22d907be7c2c2dac168736e9195fd |
linux-arm64 |
required |
SHA256: d6671b31bab31b9b13aea25bb7d60f15484cb8bf961ddbf67a62867e5563eae5 |
linux-armel |
required |
SHA256: e107e7a9cd50d630b034f435a16a52db5a57388dc639a99c4c393c5e429711e9 |
linux-armhf |
required |
SHA256: 6c6dd25477b2e758d4669da3774bf664d1f012442c880f17dfdf0339e9c3dae9 |
linux-i686 |
required |
SHA256: beb9b6737c975369b6959007739c88f44eb5afbb220f40737071540b2c1a9064 |
macos |
required |
SHA256: 5a952087b621ced16af1e375feac1371a61cb51ab7e7b44cbefb5afda2d573de |
macos-arm64 |
required |
SHA256: 73bda8476ef92d4f4abee96519abbba40e5ee32f368427469447b83cc7bb9b42 |
win32 |
required |
SHA256: 77344715ea7d7a7a9fd0b27653f880efaf3bcc1ac843f61492d8a0365d91f731 |
win64 |
required |
SHA256: 525e5b4c8299869a3fdddb51baad76612c5c104bd96952ae6460ad7e5b5a4e21 |
cmake
CMake build system
On Linux and macOS, it is recommended to install CMake using the OS package manager. However, for convenience it is possible to install CMake using idf_tools.py along with the other tools.
License: BSD-3-Clause
More info: https://github.com/Kitware/CMake
Platform |
Required |
Download |
---|---|---|
linux-amd64 |
optional |
https://github.com/Kitware/CMake/releases/download/v3.24.0/cmake-3.24.0-linux-x86_64.tar.gz SHA256: 726f88e6598523911e4bce9b059dc20b851aa77f97e4cc5573f4e42775a5c16f |
linux-arm64 |
optional |
https://github.com/Kitware/CMake/releases/download/v3.24.0/cmake-3.24.0-linux-aarch64.tar.gz SHA256: 50c3b8e9d3a3cde850dd1ea143df9d1ae546cbc5e74dc6d223eefc1979189651 |
linux-armel |
optional |
https://dl.espressif.com/dl/cmake/cmake-3.24.0-Linux-armv7l.tar.gz SHA256: 7dc787ef968dfef92491a4f191b8739ff70f8a649608b811c7a737b52481beb0 |
linux-armhf |
optional |
https://dl.espressif.com/dl/cmake/cmake-3.24.0-Linux-armv7l.tar.gz SHA256: 7dc787ef968dfef92491a4f191b8739ff70f8a649608b811c7a737b52481beb0 |
macos |
optional |
https://github.com/Kitware/CMake/releases/download/v3.24.0/cmake-3.24.0-macos-universal.tar.gz SHA256: 3e0cca74a56d9027dabb845a5a26e42ef8e8b33beb1655d6a724187a345145e4 |
macos-arm64 |
optional |
https://github.com/Kitware/CMake/releases/download/v3.24.0/cmake-3.24.0-macos-universal.tar.gz SHA256: 3e0cca74a56d9027dabb845a5a26e42ef8e8b33beb1655d6a724187a345145e4 |
win32 |
required |
https://github.com/Kitware/CMake/releases/download/v3.24.0/cmake-3.24.0-windows-x86_64.zip SHA256: b1ad8c2dbf0778e3efcc9fd61cd4a962e5c1af40aabdebee3d5074bcff2e103c |
win64 |
required |
https://github.com/Kitware/CMake/releases/download/v3.24.0/cmake-3.24.0-windows-x86_64.zip SHA256: b1ad8c2dbf0778e3efcc9fd61cd4a962e5c1af40aabdebee3d5074bcff2e103c |
openocd-esp32
OpenOCD for ESP32
License: GPL-2.0-only
More info: https://github.com/espressif/openocd-esp32
Platform |
Required |
Download |
---|---|---|
linux-amd64 |
required |
SHA256: 5144e7516cd75a2152b35ecae0a400f7d3d4424c2488fbacc49433564f54c70d |
linux-arm64 |
required |
SHA256: 1c4d900c738fe00730c6033abb6cf1cc6587717dbeee291d5908272d153d329a |
linux-armel |
required |
SHA256: 293258fd67618dd352e1096137ad9f2b801926eaf74ffcd570540ae94ad8ee5c |
linux-armhf |
required |
SHA256: b87cfb291476fc2e34468ea9175a9e195c6f1fce88e643c955c87ccc58bfb1f8 |
macos |
required |
SHA256: 621aad7d011c6817cde9570dfea42c7bcc699458bf43c37706cb4c2f6475a247 |
macos-arm64 |
required |
SHA256: 3af7eac3a7de3939731ec4c13fb5d72a8e6ce5e5d274bb9697f5d93039561e42 |
win32 |
required |
SHA256: f2cb3d9cacfe789c20d3272af846d726a062ce8f2e4ee142bddb27501d7dd7a7 |
win64 |
required |
SHA256: f2cb3d9cacfe789c20d3272af846d726a062ce8f2e4ee142bddb27501d7dd7a7 |
ninja
Ninja build system
On Linux and macOS, it is recommended to install ninja using the OS package manager. However, for convenience it is possible to install ninja using idf_tools.py along with the other tools.
License: Apache-2.0
More info: https://github.com/ninja-build/ninja
Platform |
Required |
Download |
---|---|---|
linux-amd64 |
optional |
https://dl.espressif.com/dl/ninja-1.10.2-linux64.tar.gz SHA256: 32bb769de4d57aa7ee0e292cfcb7553e7cc8ea0961f7aa2b3aee60aa407c4033 |
macos |
optional |
https://dl.espressif.com/dl/ninja-1.10.2-osx.tar.gz SHA256: 847bb1ca4bc16d8dba6aeed3ecb5055498b86bc68c364c37583eb5738bb440f1 |
macos-arm64 |
optional |
https://dl.espressif.com/dl/ninja-1.10.2-osx.tar.gz SHA256: 847bb1ca4bc16d8dba6aeed3ecb5055498b86bc68c364c37583eb5738bb440f1 |
win64 |
required |
https://dl.espressif.com/dl/ninja-1.10.2-win64.zip SHA256: bbde850d247d2737c5764c927d1071cbb1f1957dcabda4a130fa8547c12c695f |
idf-exe
IDF wrapper tool for Windows
License: Apache-2.0
More info: https://github.com/espressif/idf_py_exe_tool
Platform |
Required |
Download |
---|---|---|
win32 |
required |
https://github.com/espressif/idf_py_exe_tool/releases/download/v1.0.3/idf-exe-v1.0.3.zip SHA256: 7c81ef534c562354a5402ab6b90a6eb1cc8473a9f4a7b7a7f93ebbd23b4a2755 |
win64 |
required |
https://github.com/espressif/idf_py_exe_tool/releases/download/v1.0.3/idf-exe-v1.0.3.zip SHA256: 7c81ef534c562354a5402ab6b90a6eb1cc8473a9f4a7b7a7f93ebbd23b4a2755 |
ccache
Ccache (compiler cache)
License: GPL-3.0-or-later
More info: https://github.com/ccache/ccache
Platform |
Required |
Download |
---|---|---|
win64 |
required |
https://github.com/ccache/ccache/releases/download/v4.8/ccache-4.8-windows-x86_64.zip SHA256: a2b3bab4bb8318ffc5b3e4074dc25636258bc7e4b51261f7d9bef8127fda8309 |
dfu-util
dfu-util (Device Firmware Upgrade Utilities)
License: GPL-2.0-only
More info: http://dfu-util.sourceforge.net/
Platform |
Required |
Download |
---|---|---|
win64 |
required |
https://dl.espressif.com/dl/dfu-util-0.11-win64.zip SHA256: 652eb94cb1c074c6dbead9e47adb628922aeb198a4d440a346ab32e7a0e9bf64 |
esp-rom-elfs
ESP ROM ELFs
License: Apache-2.0
More info: https://github.com/espressif/esp-rom-elfs
Platform |
Required |
Download |
---|---|---|
any |
required |
https://github.com/espressif/esp-rom-elfs/releases/download/20230320/esp-rom-elfs-20230320.tar.gz SHA256: 24bcc8cb3287175d4a0bfd65e04bf7ef592a10f022acffca0d5e87eee05996d4 |