CentOS 8 上缺少 Python 套件

CentOS 8 上缺少 Python 套件

一週以來,我一直在嘗試在全新安裝的 CentOS 8 上安裝一個軟體。

現在的主要問題是缺少一些Python套件。具體來說,我無法取得以下套件名稱:

MySQL-python
libxml2-python
numpy
python-imaging
python2-pyside
python-netifaces

我當然可以透過 pip2 安裝庫,但它似乎不滿足依賴關係。

我們是否必須更新依賴項,並可能更改一些程式碼,或者有沒有辦法讓它按原樣工作?最好使用 EPEL 8,但無論如何我都會在 EPEL 7 中遇到相同的錯誤。

答案1

CentOS 8 基於 RHEL 8,預設切換為 Python 3。許多 Python 2 軟體包不再可用,或已更改名稱 - 例如,Python 2 的 NumPy 是python2-numpy.

從純粹的Pythonic角度來看,您的情況最好的方法是使用虛擬環境:安裝CentOSpython2-virtualenv包,然後運行

python2 -m virtualenv --system-site-packages yourenv

(替換yourenv為您想要為虛擬環境指定的名稱,該名稱也將是其建立的目錄),然後使用以下命令啟動環境

source yourenv/bin/activate

然後,您可以使用下列命令安裝 Python 依賴項pip install,而不會影響虛擬環境以外的系統。

不過,我的印像是您正在使用依賴 RPM 套件的套件。這將更難解決,最好的方法將取決於其他因素。如果打包的軟體可用於 Python 3,我會考慮將其打包;否則,您可以嘗試重新設計現有的包,但很有可能比使用虛擬環境更複雜...

RHEL 8 中的 Python了解詳情。

相關內容