如何在 Raspberry Pi OS Bookworm 安裝 Python 套件
要點
Raspberry Pi OS Bookworm 需要在虛擬平台內部署 Python 模組,作為預防措施,防止主機預設 Python 實作產生任何不利幹擾。
可以使用 Apt 套件管理器來尋找並安裝 Python 模組;但是,如果軟體包不可用或需要更新版本,則有必要在虛擬環境中使用 Pip 實用程式。
在虛擬環境中,對 Python 的任何修改或新增都不會影響 Python 的系統範圍安裝。
如果您在 Raspberry Pi OS Bookworm 上使用「pip」公用程式安裝 Python 套件時遇到困難,則必須執行其他措施,其中包括建立 Python 虛擬環境。請在下面找到執行此任務的必要程序。
Raspberry Pi OS Bookworm 發生了什麼變化?
升級到最新的 Raspberry Pi 5 裝置時,請務必記住,它可能與作業系統的先前版本(即 Raspberry Pi OS)不相容。因此,必須重新安裝新發布的「Bookworm」版本,以確保正確的功能和相容性。
在基於 Debian 的 Raspberry Pi 作業系統的過去迭代中,例如 Buster 及其先前的版本,使用者可以透過使用 pip 套件管理器全域安裝 Python 套件。然而,此功能已從 Raspberry Pi OS 的最新版本(稱為 Bookworm)中刪除。
正如 Raspberry Pi 文件 所解釋的,問題是使用 Python 專用工具(例如 pip)可能會導致與apt OS 套件管理器發生衝突。
因此,從 Bookworm 開始,必須透過使用 pip 在乾淨的 Python 虛擬環境中安裝軟體包,以防止對系統 Python 版本的任何潛在幹擾。
當嘗試在虛擬環境之外執行命令「pip install [package name]」時,會產生錯誤訊息,開頭如下:
error: externally-managed-environment
× This environment is externally managed
•°”€> To install Python packages system-wide, try apt install
python3-xyz, where xyz is the package you are trying to
install.
如何使用 Apt 搜尋 Python 套件
第一步涉及驗證是否可以透過系統範圍的 APT(高階套件工具)套件管理器安裝所需的 Python 套件。要執行此任務,可以使用「apt search」命令瀏覽官方儲存庫並找到相關套件。作為說明,請考慮執行以下命令:
apt search numpy
請注意,您需要安裝一個名為「python3-numpy」的特定套件,該套件與您的 Python 版本 3 相容。為此,請利用套件管理器 APT 以及透過「sudo」授予的管理員權限。
sudo apt install python3-numpy
如果無法透過 APT 套件管理器取得所需的 Python 套件,或需要更新版本,則必須在 Python 虛擬環境中使用專門的 pip 工具進行安裝。
如何創建Python虛擬環境
為了在 Raspberry Pi OS Bookworm 作業系統中使用 pip 公用程式安裝 Python 套件,首先需要使用 venv 指令建立虛擬 Python 環境。因此,我們將我們的特定實例命名為“muo-project”,儘管人們可以選擇他們選擇的替代名稱。
python -m venv muo-project
完成此任務所需的時間可能會根據所使用的特定 Raspberry Pi 型號而有所不同。隨後,必須導航至新建立的虛擬環境資料夾(其中包含整個 Python 安裝)並啟動其啟動。
cd muo
source bin/activate
Python 的虛擬環境已成功建立並初始化,系統提示符的變化現在顯示“muo-project”,表明正在使用環境的特定 Python 實例,而不是標準系統安裝。因此,在虛擬環境或其中安裝的套件中進行的任何修改都不會影響系統上的核心 Python 安裝。
請注意,如果系統重新啟動(例如 Raspberry Pi 重新啟動),則必須重新啟動 Python 運行時環境才能繼續使用。
要建立一個反映作業系統上目前安裝的所有 Python 套件的 Python 虛擬環境,只需在相關命令中包含 --system-site-packages
選項即可。例如,可以指定「 python-m venv–system-site-packages muo-project 」。
使用 Pip 安裝 Python 套件
為了利用 Python 虛擬環境的功能,人們可以使用 pip 命令來安裝其專案所需的任何必要套件。作為說明,請考慮透過執行以下命令來安裝 Stressberry 系統壓力測試工具:
pip install stressberry
此模組將與其必要的依賴項一起安裝在您指定的 Python 虛擬環境中。值得注意的是,該模組的可用性僅限於上述虛擬環境,並且不會超出該環境。
不再有 Python 套件衝突
與傳統系統相比,使用 pip 工具在執行 OS Bookworm 的 Raspberry Pi 上安裝 Python 套件需要額外的流程;然而,這種方法的好處是將這些套件限制在隔離的虛擬環境中,從而防止整個系統的潛在中斷或故障。