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竟然好了。

相关推荐
写写闲篇儿1 小时前
Python+MongoDB高效开发组合
linux·python·mongodb
杭州杭州杭州2 小时前
Python笔记
开发语言·笔记·python
一个龙的传说2 小时前
linux 常用命令
linux·服务器·zookeeper
路人蛃4 小时前
通过国内扣子(Coze)搭建智能体并接入discord机器人
人工智能·python·ubuntu·ai·aigc·个人开发
qiqiqi(^_×)4 小时前
卡在“pycharm正在创建帮助程序目录”
ide·python·pycharm
子柒s5 小时前
Linux 基础
linux
吗喽1543451885 小时前
用python实现自动化布尔盲注
数据库·python·自动化
MC皮蛋侠客5 小时前
Ubuntu安装Mongodb
linux·mongodb·ubuntu