esp32使用ESP-IDF在Linux下的升级步骤,和遇到的坑Traceback (most recent call last):,及解决

因为之前使用的是ESP-IDF5.3版本。而5.3版本又不支持ESP32P4。而V5.4版本开始正式对P4的支持。所以我把ESP-IDF 升级到V5.4.2的release版本。

一、升级版本:【根据乐鑫官方的方式升级】ESP-IDF 版本简介 - ESP32-P4 - --- ESP-IDF 编程指南 v5.4.2 文档

更新至一个稳定发布版本

对于量产用户,推荐更新至一个新的 ESP-IDF 发布版本,请参考以下步骤:

  • 请定期查看 发布说明页面 ,了解最新发布情况。

  • 如有新发布的 Bugfix 版本(例 v3.0.1 或 v3.0.2)时,请将新的 Bugfix 版本更新至你的 ESP-IDF 目录。

  • 在 Linux 或 macOS 系统中,请运行如下命令将分支更新至 vX.Y.Z:

    cd $IDF_PATH
    git fetch
    git checkout vX.Y.Z
    git submodule update --init --recursive

  • 在 Windows 系统中,需要将 cd $IDF_PATH 替换为 cd %IDF_PATH%。

  • 在主要版本或次要版本新发布时,请查看发布说明中的具体描述,并决定是否升级版本。具体命令与上方描述一致。

升级过程基本上是没有什么问题的。

二、升级完成后-测试

运行 get_idf后出现了错误如下:

Traceback (most recent call last):

File "/home/book/esp/esp-idf/tools/idf.py, line 3262, in <module>

.

.

.

AttributeError: '_SpecialForm' object has no attribute 'replace'

后面百度搜索找到一篇文章:Ubuntu20.04.1下ESP32环境esp-idf配置之路_ubuntu esp-idf-CSDN博客

类似的错误。但是解决方法不一样。我按照这文章的方式不行

这里我的Ubuntu就执行不了。我的环境的在~/.espressif/python_env/idf5.4_py3.9_env/这里面明显不一样。然后执行apt也会提示:WARNING: apt does not have a stable CLI interface. Use with caution in scrip。

三、解决问题

解决1:

【后面怎么设置也不行。没有办法就尝试把python版本改一下。官方也没有看到python具体版本号,只是看到python3版本。我V5.3.2是用python3.9.0是可以的。也没有考虑是python的问题。这次搞了一天多问题依旧。所以我就升级一个python3.10.16版。】

升级python版本方法: Linux Ubuntu系统升级修改python至Python3.9版本,更新pip为pip3_linux怎么升级python3.9-CSDN博客

问题2:新的终端打开get_idf出现问找到环境

复制代码
$ get_idf
Checking "python3" ...
Python 3.10.16
"python3" has been detected

ERROR: ESP-IDF Python virtual environment "/home/book/.espressif/python_env/idf5.4_py3.10_env/bin/python" not found. Please run the install script to set it up before proceeding.

解决2:这时候看~/.espressif/python_env/idf5.4_py3.9_env/是3.9.0这个时候我就重新把这cp一个重命名3.10就好了

升级完后再get_idf竟然好了。

相关推荐
我喜欢就喜欢5 分钟前
RAG 重排序 Rerank 实战:用 bge-reranker 把 Top-K 命中率拉回来
python·大模型·向量检索·rag·rerank
专注仿真12 分钟前
卷积神经网络(CNN)算法详解
人工智能·python·算法·代码·大模型训练
Linux界最忧郁之人16 分钟前
华为云ECS&IMS&AS实战|弹性云服务器、私有镜像、弹性伸缩完整实验
linux·运维·服务器·centos·华为云·openstack
isfox29 分钟前
Python3 协程:异步编程的核心机制与实战
python
用户2986985301436 分钟前
Python 将 Markdown 批量转为 HTML:单文件与目录遍历两种实现
python·html·markdown
miofly36 分钟前
GitHub 今日推荐|auto-ontology:给 Agent 装上企业数据的语义索引
python·开源·github
whyutianict_vv42 分钟前
零基础转 AI 运维:投入清单、技术路线与核对表
linux·运维·人工智能·ai
无言听风雨丶43 分钟前
systemd 与信号 / 僵尸进程:Linux 进程管理的底层逻辑与排错
linux·服务器·网络
DevOpenClub1 小时前
高考一分一段 API:分数查位次、科类枚举与历史对照
linux·数据库·高考
青少儿编程课堂1 小时前
蓝桥杯青少组图形化 + 全国青少年信息素养大赛 + 电子学会Scratch考级:校园成语接龙大挑战解析
c++·python·算法·bfs·信息学竞赛