為什麼 M1 上還要安裝 Miniforge 才能順利開發 Python 程式, 因為目前很多 原生 Python 套件都還無法相容於 M1 上, 所以在安裝或執行上都會出現錯誤。例如直接使用 pip3 安裝 opencv, numpy 和 matplotlib 等套件,都會出現如 pep517的 錯誤,導致套件安裝失敗。
但如果透過 Miniforge 安裝的 Conda 環境來安裝就不會遇到那些錯誤了。
STEP 1: 安裝基本開發環境
Xcode
至 App Store 中搜尋 “Xcode”, 找到後直接點選安裝。
安裝完畢後, 打開終端機, 輸入% sudo xcodebuild -license
若出現錯誤訊息”xcode-select: error: tool ‘xcodebuild’ requires Xcode, but active developer directory ‘/Library/Developer/CommandLineTools’ is a command line tools instance”
必須指定開發者工具的路徑至% sudo xcode-select -s /Applications/Xcode.app/Contents/Developer
閱讀授權文件, 一直按 space 鍵至最後一頁, 提示輸入 “agree” 後即完成。
執行並輸入同意 Xcode license, 接下來是安裝 Apple 命令列工具 (若已安裝過則可略)。
命令列工具
% sudo xcode-select — install
STEP 2: 安裝 Homebrew
Homebrew 是一款套件管理工具,目前支持 macOS 和 linux 系统。
主要有四個部分组成:
- brew
- homebrew-core
- homebrew-cask
- homebrew-bottles
** 官方說明,新的 M1 ARM CPU 版本 Homebrew 必須安裝在 /opt/homebrew 路徑下,而 /usr/local/homebrew 則是 for macOS Intel。***
下載 ARM 版 Homebrew
% cd /opt
% mkdir homebrew && curl -L https://github.com/Homebrew/brew/tarball/master | tar xz --strip 1 -C homebrew
加入路徑至環境變數 Homebrew
在終端機下, 輸入% nano ~/.zshrc
在檔案內容的最下面, 加入此環境變數 PATHexport PATH=$PATH:/opt/homebrew/bin
存檔離開後, 在終端機下輸入下面指令, 讓環境變數能即刻生效。% source ~/.zshrc
在終端機 App 貼上下面兩列指令字串
% echo 'eval $(/opt/homebrew/bin/brew shellenv)' >> /Users/vincent/.zprofile
% eval $(/opt/homebrew/bin/brew shellenv)
檢查是否已正常安裝且可執行
% brew help
STEP 3: 安裝 Miniforge (Conda + Python 3環境)
透過 homebrew 安裝 miniforge
% brew install miniforge
訊息顯示 conda 的執行連結路徑至 /opt/homebrew/bin/conda, 接下來
在終端機輸入 conda init <SHELL_NAME>
來初始化 Shell (此處的 SHELL_NAME 在 M1 內建的終端機是 zsh)。
% conda init zsh
依指示重啟 Terminal 後, 會自動進入 Conda 的預設基礎環境 base。
***預設每當終端機一被開啟後, 會自動就會進入 Conda 的 base 的基礎工作環境, 但若設定為開機後不自動載入時, 可輸入以下指令:
conda config --set auto_activate_base false
檢查是否已正常安裝且可執行
% conda help
STEP 4: 新增虛擬環境
例如後續要新增的專案名為 opencv
新增專案環境
以下指令擇一
% conda create -n 專案名
% conda create -n 專案名 python=版本
% conda create -n 專案名 -p 指定專案路徑目錄
% conda create -p 指定路徑目錄/opencv
我的另一個專案 my_opencv 因不指明安裝路徑, 所以只是輸入 -n 或 -name% conda create -n my_opencv
啟動 (進入) 專案環境
% conda activate my_opencv
關閉 (離開) 虛擬環境
% conda deactivate
接下來, 專案的環境一旦建立後, 您就可以順利的在上面執行寫好的 Python 程式了 !!
作者:Yungger 勇哥
若覺得此文真對您有幫助, 點點左上方的拍手圖示, 鼓勵一下。若還想 請喝杯咖啡 鼓勵一下勇哥的繼續創作, 也感謝 😘 😘 !!
Yungger
Maker & Freelancer