Windows环境下,在Vscode里利用ESP-IDF开发ESP32S3项目时,不能构建的问题1及解决方法

一、电脑上开发包安装情况

已经安装了ESP-IDF框架,并安装了Python3.13。如下图所示:

二、现象

在Vscode的Terminal(终端)里执行命令idf.py --version时,提示下图所示错误:

No module named 'click'

This usually means that "idf.py" was not spawned within an ESP-IDF shell environment or the python virtual environment used by "idf.py" is corrupted.

Please use idf.py only in an ESP-IDF shell environment. If problem persists, please try to install ESP-IDF tools again as described in the Get Started guide.

三、问题分析

该错误说明:Python 环境缺少依赖(click)。

造成这个问题的原因:通常是因为没有在 ESP-IDF 的虚拟环境中运行 idf.py 或该 venv 未正确创建或损坏。

四、解决过程

第一步:在D:\esp-idf-v5.5.2(这个是esp-idf根目录)里,执行.\install.ps1。

install.ps1 是 ESP‑IDF 在 Windows 上的安装脚本,用来自动为该 ESP‑IDF 版本安装并配置所需的工具链与依赖。

命令正确执行后,会看到下图所示内容。内容很多,仅截取最后的一部分。重点看第一行和倒数第二行。倒数第一行给出了第二步要执行的命令。

第二步: 在D:\esp-idf-v5.5.2(这个是esp-idf根目录)里,执行.\export.ps1 ,执行后,看到如下提示:

至此,Vscode里的构建环境就成功激活了!

五、验证

环境激活后,可以再构建一下当前的项目,以验证环境配置是否成功。

特别要注意,刚才配置和激活环境时,我们把当前路径切换到了esp-idf的根目录,现在要构建项目,必须切换到项目文件夹里。或者使用绝对路径。

下图是我的项目文件结构:

构建时,应该把当前目录切换到uart_async_rxtxtasks这个文件夹,命令是:

cd D:\esp-idf-v5.5.2\examples\peripherals\uart\uart_async_rxtxtasks 或者

cd .\examples\peripherals\uart\uart_async_rxtxtasks

若直接在 D:\esp-idf-v5.5.2 下执行build,进行项目构建,使用下面的两种方法也可以:

  • idf.py -C D:\esp-idf-v5.5.2\examples\peripherals\uart\uart_async_rxtxtasks build

  • 使用相对路径: idf.py -C .\examples\peripherals\uart\uart_async_rxtxtasks build

构建成功后,可以看到下图所示提示信息:

相关推荐
Rabitebla18 小时前
【Linux底层原理】 工具篇(二):Vim 编辑器基础操作与简单配置
linux·c++·编辑器·vim
2501_9151063218 小时前
Windows 用 KXBuild 开发 iOS 项目,CocoaPods、SPM 怎么处理?
windows·vscode·ios·个人开发·swift·敏捷流程·cocoapods
2501_9159090619 小时前
KXApp 能打开哪些 iOS 项目?xcodeproj 与 CocoaPods 支持清单
ide·vscode·ios·个人开发·xcode·敏捷流程·cocoapods
白鹭鸣鸣!2 天前
WSL2 + OpenCode 完整搭建全流程(含迁移 WSL 到 D 盘)
编辑器
2501_916008892 天前
Windows 上写第一个 SwiftUI App,KXBuild 空工程起步,跑到 iPhone 真机
ide·vscode·ios·objective-c·个人开发·swift·敏捷流程
骑着蜗牛撵大象3272 天前
四种库收进一个SQL编辑器(下):跨库取数、方言对齐与四库巡检的落地拆解
jvm·数据库·sql·编辑器·数据迁移·跨库查询
Piink2 天前
Mac使用Vscode教程
ide·vscode·macos
jingcairensheng2 天前
vscode 配置Python虚拟环境基于扩展和原生miniconda的区别
ide·vscode·python
学习论之费曼学习法2 天前
无人值守AI内容矩阵实战(7):Playwright 发布器避坑——编辑器竞态、索引延迟与风控
python·线性代数·矩阵·编辑器·浏览器自动化·playwright·踩坑记录
心态还需努力呀2 天前
把 Zettlr 搬上鸿蒙 PC:墨匣学术写作编辑器移植与上架全记录
华为·编辑器·harmonyos