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.1v3.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 小时前
HAProxy高级功能全解析
linux·运维·服务器·微服务·云原生
学嵌入式的小杨同学6 小时前
【Linux 封神之路】信号编程全解析:从信号基础到 MP3 播放器实战(含核心 API 与避坑指南)
java·linux·c语言·开发语言·vscode·vim·ux
酥暮沐6 小时前
iscsi部署网络存储
linux·网络·存储·iscsi
❀͜͡傀儡师6 小时前
centos 7部署dns服务器
linux·服务器·centos·dns
好家伙VCC7 小时前
### WebRTC技术:实时通信的革新与实现####webRTC(Web Real-TimeComm
java·前端·python·webrtc
Dying.Light7 小时前
Linux部署问题
linux·运维·服务器
S19017 小时前
Linux的常用指令
linux·运维·服务器
小义_7 小时前
【RH134知识点问答题】第7章 管理基本存储
linux·运维·服务器
前端玖耀里8 小时前
如何使用python的boto库和SES发送电子邮件?
python
serve the people8 小时前
python环境搭建 (十二) pydantic和pydantic-settings类型验证与解析
java·网络·python