exec: "python": 在 $PATH 中找不到可执行文件

exec: "python": executable file not found in $PATH

自上次更新 Mac OS Monterey 12.3 以来,我在编译我的 Arduino 草图时收到以下错误消息:

exec: "python": executable file not found in $PATH

不幸的是,我还没有找到解决这个问题的方法。

非常感谢您的想法和建议。

需要四个步骤:

  1. 使用 Brew 安装 python3:

    brew install python
    

    python3 在:

    /opt/homebrew/bin/python3
    
  2. Link Python 到 python3:

    sudo ln -s /opt/homebrew/bin/python3 /opt/homebrew/bin/python
    
  3. 检查是否可以从终端执行;即,

    python --version
    

    无论你使用python --version还是python3 --version,现在都应该显示python 3。

  4. 打开终端并执行:

    open /Applications/Arduino.app
    

它适用于我的情况。看起来当从 GUI 执行 Arduino 时,它没有正确读取 $PATH,因此尽管 python 链接到 python3,但它找不到它。

问题

在 MacOS 12.3 中,Apple 从 MacOS 中删除了 python2.7 (python)。

解决方案

我解决这个问题的方法是 link python3python,我不推荐它,因为它是 sus,我建议你等到 Arduino IDE 在以后的版本中修复了这个问题。暂时,你可以试试他们的网站 IDE: Arduino Editor

但是,这里是 link python3python 的说明:

  1. 如果你没有安装python3,请在下面link这里安装:

    Python Install Page

  2. 找到您正在使用的 python3 当前版本的路径

    which python3

    它会显示如下内容: /Library/Frameworks/Python.framework/Versions/3.10/bin/python3

  3. 复制并将其用于 运行 此命令 links python 3python。将第一个文件路径替换为 python3 所在的位置。

    ln -s -f INSERT_PATH_OF_PYTHON3 /usr/local/bin/python

    例如:

    ln -s -f /Library/Frameworks/Python.framework/Versions/3.10/bin/python3 /usr/local/bin/python