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

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

相关推荐
徽京人12 小时前
VS Code 接入Esp 32步骤
vscode·单片机·嵌入式硬件
笨笨饿15 小时前
#109_BK7258 蓝牙 A2DP 音频数据通路深度解析
python·stm32·单片机·mcu·物联网·编辑器·音视频
oushaojun220 小时前
vscode中支持deepseek ai辅助编程
vscode·copilot·deepseek
带娃的IT创业者2 天前
Emacs 31:一场静默而深刻的范式演进
编辑器·文本编辑器·开源软件·emacs·lisp·软件架构
●VON2 天前
芯笺 Markdown:面向 HarmonyOS PC 的本地优先 Markdown 编辑器
华为·编辑器·harmonyos·鸿蒙
sunoo-2292 天前
C 语言文件 IO 全攻略:从基础函数到实战踩坑(BMP 读取 + 词典查询)
linux·c语言·前端·笔记·vscode·学习
慕容引刀2 天前
或许你真的需要这个Git神器:让团队提交文案终于对齐了
人工智能·git·vscode·自然语言处理·github
●VON2 天前
芯稿 MarkDeck 使用指南:用 Markdown 写出可编辑的 PPT
华为·编辑器·powerpoint·harmonyos·鸿蒙
00后程序员张2 天前
iOS 开发全流程需要哪些工具?编码、调试、构建、发布阶段选择
ide·vscode·ios·objective-c·个人开发·swift·敏捷流程