簡體   English   中英

在 Mac M1 上安裝 python 包時出現問題

[英]Problems installing python packages on Mac M1

我想安裝 github repo 的需求文件中列出的 python 包。 但是,我在將這些 python 包安裝到我的 conda 環境中時遇到問題。

首先,我用 Miniforge3-MacOSX-arm64 安裝了 conda,它支持帶有 arm64 架構的 M1。 但是,我無法安裝一些特定的 python 軟件包,例如 onnxruntime,因為我遇到了這樣的錯誤消息:

ERROR: Could not find a version that satisfies the requirement onnxruntime
ERROR: No matching distribution found for onnxruntime 

我假設對於那些特定的 python 包,尚不支持 M1。

因此,我采用了另一種方法。 我將終端的設置設置為“使用 Rosetta 打開”。 計划是安裝 intel x86_64 架構的應用程序,並讓 Rossetta 創建二進制文件以在 arm64 上運行。 然后我卸載了 arm64 的 miniforge 並安裝了名為 Miniforge3-MacOSX-x86_64 的 x86_64 的 miniforge。 通過該設置,我能夠安裝需求文件的所有列出的 python 包,並且通過pip freeze ,我還可以確認它們已安裝。 但是,我不知何故無法使用那些 python 包。 例如,如果我想運行 pytest 我會收到以下錯誤:

zsh: illegal hardware instruction pytest

我假設 Rossetta 會處理這個問題,我也可以在 arm64 上使用 x86_64 的應用程序。 但不知何故,它不起作用。 我嘗試了很多不同的東西並且沒有想法。

有誰知道問題是什么? 我也將感謝有關如何在 Mac M1 上正確設置 python 環境的建議和建議。

兩天前我遇到了同樣的問題,我正在使用m1 pro 我試圖僅使用pip安裝 python 軟件包,但出現了許多錯誤,然后我決定使用conda安裝。

就我而言,它起作用了,到目前為止我所做的是:

首先在你的 zsh 中啟用open with rosetta 接着,

# create environment in conda
conda create -n venv python=3.8 # with your python version

# activate
conda activate venv

並訪問 conda 網站查找包:檢查包

假設如果你正在尋找pytest包,那么你可以搜索它,你會得到這樣的結果,有可用的 package 和頻道。

在此處輸入圖像描述

您需要使用以下命令啟用該特定通道以獲取 package:

# config channel
conda config --append channels conda-forge # available channel name

# then install
conda install --yes --file requirements.txt

確保您在requirements.txt文件中擁有相同版本的pytest (eg:pytest==6.2.5)

希望這應該可行,如果不嘗試使用pip安裝它,例如: pip install -r requirements.txt在環境啟用后。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM