M1 Mac 上的 Pip 安装 matplotlib 失败

时间:2021-02-09 15:36:53

标签: python matplotlib pip apple-m1

我在 M1 Mac 上通过 pip 安装 matplotlib 时遇到困难。我通过 Homebrew 安装了 Python 3.9.1。

运行 pip3 install matplotlib 时,安装程​​序会尝试安装最新版本 matplotlib 3.3.4。安装程序卡住并在一段时间后打印一条巨大的错误消息。在此之后,它会尝试安装 3.3.3 版,然后再次发生同样的情况,依此类推。出了什么问题?

以下是一些错误信息:

    william@Williams-MacBook-Pro ~ % pip3 install matplotlib
Collecting matplotlib
  Using cached matplotlib-3.3.4.tar.gz (37.9 MB)
    ERROR: Command errored out with exit status 1:
     command: /opt/homebrew/opt/python@3.9/bin/python3.9 -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/var/folders/yb/rgjfc7ws25ddwd07x96f4fmw0000gn/T/pip-install-h7oltt2f/matplotlib_1ad1e28a38b14b40ae2bcaa7f9b01cab/setup.py'"'"'; __file__='"'"'/private/var/folders/yb/rgjfc7ws25ddwd07x96f4fmw0000gn/T/pip-install-h7oltt2f/matplotlib_1ad1e28a38b14b40ae2bcaa7f9b01cab/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base /private/var/folders/yb/rgjfc7ws25ddwd07x96f4fmw0000gn/T/pip-pip-egg-info-0jjax4jc
         cwd: /private/var/folders/yb/rgjfc7ws25ddwd07x96f4fmw0000gn/T/pip-install-h7oltt2f/matplotlib_1ad1e28a38b14b40ae2bcaa7f9b01cab/
    Complete output (2287 lines):
      ERROR: Command errored out with exit status 1:
       command: /opt/homebrew/opt/python@3.9/bin/python3.9 /opt/homebrew/lib/python3.9/site-packages/pip/_vendor/pep517/_in_process.py build_wheel /var/folders/yb/rgjfc7ws25ddwd07x96f4fmw0000gn/T/tmp3p0is_vc
           cwd: /private/var/folders/yb/rgjfc7ws25ddwd07x96f4fmw0000gn/T/pip-wheel-5rqmhbah/numpy_cefeff1e3acc4faea4c06d0f4597b2da

2 个答案:

答案 0 :(得分:14)

python3 -m pip install cython   
python3 -m pip install --no-binary :all: --no-use-pep517 numpy
brew install libjpeg
python3 -m pip install matplotlib

为我工作,此时它安装了numpy 1.20.1。

来自 Homebrew 的相同 Python 版本 (3.9.1)。

答案 1 :(得分:1)

  1. 在此处为 arm64 (Apple Silicon) 安装 Miniforge 最新安装程序:installer here

  2. 现在为您拥有的任何版本创建一个 conda 环境(我正在运行 3.9.2)

conda create -n cenv python=3.9.2
conda activate cenv
conda install matplotlib

在撰写本文时,如果您尝试从轮子 / pip 开始,您将努力让所有不同的包正常工作。