首页 > 编程问答 >无法编译 Arduino ESP32 代码:.../python3: exec 格式错误

无法编译 Arduino ESP32 代码:.../python3: exec 格式错误

时间:2024-07-26 15:01:45浏览次数:15  
标签:python arduino esp32

昨天我使用 MacOS Arduino IDE 或 VS Code 编译 Arduino 草图没有任何问题。

但今天什么也编译不了。我尝试在 Arduino IDE 或带有 Arduino 扩展的 VS Code 中编译的任何草图都会出现此错误:

fork/exec /Library/Frameworks/Python.framework/Versions/3.11/bin/python3: exec format error
Compilation error: fork/exec /Library/Frameworks/Python.framework/Versions/3.11/bin/python3: exec format error

在我看来像是 Python 问题,但我不知道如何诊断它。

我包括以下内容,以防可能有帮助:

当我运行时:“ ~ which python3 ” 我得到:

/Library/Frameworks/Python.framework/Versions/3.11/bin/python3

当我运行时:“ ~ python --version ”我得到:

Python 3.10.6

...我能想到的唯一可能改变事情的是我运行了 MacOS“Docker”应用程序来检查它并在打开后立即退出。这会对我的 Python 安装产生影响吗?

非常感谢任何帮助。谢谢...

编译错误:

    Creating esp32 image...
Merged 27 ELF sections
Successfully created esp32 image.
Multiple libraries were found for "PubSubClient.h"
  Used: /Users/(username)/Documents/Arduino/libraries/PubSubClient
  Not used: /Users/(username)/Documents/Arduino/libraries/TBPubSubClient
Multiple libraries were found for "WiFi.h"
  Used: /Users/(username)/Library/Arduino15/packages/esp32/hardware/esp32/2.0.17/libraries/WiFi
  Not used: /Users/(username)/Documents/Arduino/libraries/WiFiNINA
python3 /Users/(username)/Library/Arduino15/packages/esp32/hardware/esp32/2.0.17/tools/gen_esp32part.py -q /private/var/folders/7f/4qj_xs8117z4jzt1k609bcc40000gp/T/arduino/sketches/E3FEF3521140621E6A9B6D076EFE409D/partitions.csv /private/var/folders/7f/4qj_xs8117z4jzt1k609bcc40000gp/T/arduino/sketches/E3FEF3521140621E6A9B6D076EFE409D/Async_OTA_DRD_MQTT_1.ino.partitions.bin
Using library AsyncElegantOTA at version 2.2.8 in folder: /Users/(username)/Documents/Arduino/libraries/AsyncElegantOTA 
Using library WiFi at version 2.0.0 in folder: /Users/(username)/Library/Arduino15/packages/esp32/hardware/esp32/2.0.17/libraries/WiFi 
Using library AsyncTCP at version 1.1.4 in folder: /Users/(username)/Documents/Arduino/libraries/AsyncTCP 
Using library Update at version 2.0.0 in folder: /Users/(username)/Library/Arduino15/packages/esp32/hardware/esp32/2.0.17/libraries/Update 
Using library ESP Async WebServer at version 3.0.6 in folder: /Users/(username)/Documents/Arduino/libraries/ESP_Async_WebServer 
Using library FS at version 2.0.0 in folder: /Users/(username)/Library/Arduino15/packages/esp32/hardware/esp32/2.0.17/libraries/FS 
Using library PubSubClient at version 2.8 in folder: /Users/(username)/Documents/Arduino/libraries/PubSubClient 
Using library ESPAsync_WiFiManager at version 1.15.1 in folder: /Users/(username)/Documents/Arduino/libraries/ESPAsync_WiFiManager 
Using library ESP AsyncDNSServer at version 1.0.0 in folder: /Users/(username)/Documents/Arduino/libraries/ESPAsyncDNSServer 
Using library ESP32 Async UDP at version 2.0.0 in folder: /Users/(username)/Library/Arduino15/packages/esp32/hardware/esp32/2.0.17/libraries/AsyncUDP 
fork/exec /Library/Frameworks/Python.framework/Versions/3.11/bin/python3: exec format error

Compilation error: fork/exec /Library/Frameworks/Python.framework/Versions/3.11/bin/python3: exec format error

这个错误信息 "fork/exec /Library/Frameworks/Python.framework/Versions/3.11/bin/python3: exec format error" 通常表示 Arduino IDE 试图运行的 Python 解释器文件已损坏,或者与其架构不兼容。

以下是几种可能的解决方法:

1. 检查 Python 安装:

  • 重新安装 Python: 最简单的解决方法是重新安装 Python 3.11。你可以从 https://www.python.org/downloads/ 下载适用于 macOS 的安装程序。
  • 检查 Python 路径: 确保 Arduino IDE 能够找到正确的 Python 解释器。你可以在 Arduino IDE 的首选项中设置 Python 路径。
  • 检查文件权限: 确保 /Library/Frameworks/Python.framework/Versions/3.11/bin/python3 文件具有正确的权限。你可以使用 ls -l /Library/Frameworks/Python.framework/Versions/3.11/bin/python3 命令检查权限,并使用 chmod +x /Library/Frameworks/Python.framework/Versions/3.11/bin/python3 命令添加执行权限。

2. 检查 Docker 影响:

  • 虽然 Docker 本身不太可能直接影响 Python 安装,但它可能会修改环境变量。尝试重启电脑,看看是否能解决问题。
  • 检查 Docker 是否设置了 PYTHONPATH 环境变量,并将其暂时移除或修改为正确的 Python 路径。

3. 检查 Arduino IDE 设置:

  • 尝试在 Arduino IDE 中选择不同的 ESP32 板卡版本,看看是否能解决问题。
  • 尝试重新安装 Arduino IDE。

4. 寻求帮助:

  • 如果以上方法都无法解决问题,你可以在 Arduino 论坛或 ESP32 论坛上寻求帮助。 记得提供详细的错误信息、操作系统版本、Python 版本以及 Arduino IDE 版本。

希望以上信息能帮助你解决问题!

标签:python,arduino,esp32
From: 78796592

相关文章

  • 用Python解析邮件日志
    我的任务有点困难。我有一个邮件日志,如:Oct315:30:18mail1postfix/lmtp[5369]:DB10242054:to=<XXXXX>,orig_to=<XXXXXX>,relay=ip[ip]:port,delay=1.4,delays=0.04/0/0.01/1.4,dsn=2.0.0,status=sent(2502.0.0fromMTA(smtp:[iP]:port):2502.0.0Ok:queueda......
  • Python,Pyinstaller打包含taichi模块的程序
    Python版本3.9、taichi版本1.7.1,pyinstaller版本6.9.0问题描述:正常Pyinstaller打包后报错[Taichi]version1.7.1,llvm15.0.1,commit0f143b2f,win,python3.9.19[Taichi]Startingonarch=x64Traceback(mostrecentcalllast):File"taichi\lang\_wrap_inspec......
  • Python,运行Yolo项目,报错AttributeError: ‘ImageDraw‘ object has no attribute ‘te
    Python3.9问题描述:其他电脑已经运行成功的Python,YOLO代码到我电脑上运行报错Traceback(mostrecentcalllast): File"C:\Users\Administrator\Desktop\20240725\识别项目\predict.py",line122,in<module>  frame=np.array(yolo.detect_image(frame)) Fil......
  • Python从零开始制做文字游戏(荒岛求生)
    文章目录前言开发游戏《荒岛求生》游戏大纲背景内容通关条件游戏过程探索荒岛购买物资休息总结代码开发定义变量当前代码引入背景故事当前代码循环问题解决:函数当前代码制作延时当前代码制作a函数(探索荒岛阶段)展示数......
  • 使用 Python 进行数据分析:入门指南
    使用Python进行数据分析:入门指南1.简介本指南将介绍如何使用Python进行数据分析,涵盖从数据加载到可视化分析的各个方面。2.必要的库NumPy:用于数值计算和数组操作。Pandas:用于数据处理和分析,提供DataFrame结构。Matplotlib:用于数据可视化,创建各种图表。Seab......
  • IT实战课堂计算机毕业设计源码精品基于Python的高校教育教材采购出入库进销存储信息管
    项目功能简介:《[含文档+PPT+源码等]精品基于Python的高校教育教材信息管理系统设计与实现》该项目含有源码、文档、PPT、配套开发软件、软件安装教程、项目发布教程、包运行成功以及课程答疑与微信售后交流群、送查重系统不限次数免费查重等福利!软件开发环境及开发工具:开......
  • 为什么我的 Python 脚本失败并出现 TypeError?
    我正在编写一个Python脚本,该脚本应该计算数字列表的总和。但是,当我运行代码时遇到TypeError这是一个最小的例子:numbers=[1,2,3,'4']total=sum(numbers)print(total)Theerrormessageis:TypeError:unsupportedoperandtype(s)for+:'int'and'str......
  • 如何通过socks代理传递所有Python的流量?
    有如何通过http代理传递所有Python的流量?但是,它不处理sock代理。我想使用sock代理,我们可以通过ssh隧道轻松获得它。ssh-D5005user@server你可以使用socks库,让你的Python代码通过SOCKS代理传递所有流量。这个库可以让你在套接字级别上指定代......
  • 如何在streamlit python中流式传输由LLM生成的输出
    代码:fromlangchain_community.vectorstoresimportFAISSfromlangchain_community.embeddingsimportHuggingFaceEmbeddingsfromlangchainimportPromptTemplatefromlangchain_community.llmsimportLlamaCppfromlangchain.chainsimportRetrievalQAimports......
  • python mysql操作
    pipinstallmysql-connector-pythonimportmysql.connector#配置数据库连接参数config={'user':'your_username','password':'your_password','host':'your_host','database'......