jps*_*ter 28 python scipy scikit-learn apple-m1
在 m1 芯片上安装以下软件包:Numpy 1.21.1、pandas 1.3.0、torch 1.9.0 和其他一些软件包对我来说效果很好。在测试时它们似乎也能正常工作。但是,当我尝试通过 pip 安装 scipy 或 scikit-learn 时,会出现此错误:
错误:numpy 构建轮子失败
构建 numpy 失败
错误:无法为使用 PEP 517 的 numpy 构建轮子,并且无法直接安装
当我已经安装了 pip 的最新版本时,为什么要再次构建 Numpy?
python3.9 -m pip install ...之前的每个安装都是在配备Apple m1 芯片的 Mac OS 11.3.1 上完成的。
也许有人知道如何处理这个错误,或者这只是时间问题。
Und*_*ern 45
scikit-learn现在可以通过 pip \xe2\x9c\x85 运行首先brew install openblas- 它有针对不同处理器的说明(维基百科)
brew install openblas\nexport OPENBLAS=$(/opt/homebrew/bin/brew --prefix openblas)\nexport CFLAGS="-falign-functions=8 ${CFLAGS}"\n# ^ no need to add to .zshrc, just doing this once.\npip install scikit-learn\nRun Code Online (Sandbox Code Playgroud)\n在 Apple Silicon M1 上表现出色
\nPip 从 Pipy 下载了源代码,然后构建了针对 MacOS X 12.0 和 arm64(苹果芯片)的轮子:scikit_learn-1.0.1-cp38-cp38-macosx_12_0_arm64.whl.
Building wheels for collected packages: scikit-learn\n Building wheel for scikit-learn (pyproject.toml) ... done\n Created wheel for scikit-learn: filename=scikit_learn-1.0.1-cp38-cp38-macosx_12_0_arm64.whl size=6364030 sha256=0b0cc9a21af775e0c8077ee71698ff62da05ab62efc914c5c15cd4bf97867b31\nSuccessfully built scikit-learn\nInstalling collected packages: scipy, scikit-learn\nSuccessfully installed scikit-learn-1.0.1 scipy-1.7.3\nRun Code Online (Sandbox Code Playgroud)\n关于 Pipy 的注意事项:我们通常会下载一个预构建的轮子(是的,这对于可靠的分发和确保兼容性非常有用)。或者,如果不存在预构建的轮子(悲伤),那么我们下载一个 tar.gz并自己构建它。发生这种情况是因为作者没有向 Pipy 发布预构建的轮子,但越来越多的人将其添加到他们的 CI(github 操作)工作流程中。自己构建轮子需要更多的 CPU 时间,并且通常不太可靠,但在这种情况下可以工作。
\n在这里,我们下载一个预构建的轮子,它几乎没有任何限制:它适用于任何版本的 python 3、任何操作系统、任何体系结构(如 amd64 或 arm64):click-8.0.3-py3-none-any.whl
Collecting click>=7.0\n Downloading click-8.0.3-py3-none-any.whl\nRun Code Online (Sandbox Code Playgroud)\n显然我们没有可用的轮子,所以我们必须自己用setuptoolsrunning来构建它setup.py。
Collecting grpcio>=1.28.1\n Downloading grpcio-1.42.0.tar.gz (21.3 MB)\n |\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88| 21.3 MB 12.7 MB/s\n Preparing metadata (setup.py) ... done\n\n## later in the process it installs using setuptools \nRunning setup.py install for grpcio ... done\nRun Code Online (Sandbox Code Playgroud)\n祝你好运,管道快乐。
\n小智 13
最后设法使用以下步骤对此进行排序:
\n\n\n >> /opt/homebrew/bin/brew install openblas\n >> export OPENBLAS=$(/opt/homebrew/bin/brew --prefix openblas)\n >> export CFLAGS="-falign-functions=8 ${CFLAGS}"\n >> git clone https://github.com/scipy/scipy.git\n >> cd scipy\n >> git submodule update --init\n >> /opt/homebrew/bin/pip3 install .\n >> /opt/homebrew/bin/pip3 install scikit-learn\n\nRun Code Online (Sandbox Code Playgroud)\npython3 -m venv --system-site-packages .venvBLi*_*ess 11
截至 2022 年 3 月 14 日(馅饼日!),我所要做的就是在 conda 环境中输入以下内容:
conda install --channel=conda-forge scikit-learn
Run Code Online (Sandbox Code Playgroud)
就是这样。我正在 conda 环境中运行配备 MacOS 11.6 和 python 3.8 的 MacBook Pro(13 英寸,M1,2020)。
| 归档时间: |
|
| 查看次数: |
47120 次 |
| 最近记录: |