CentOS 7.9 安裝 Python 3.10 詳細步驟及常見錯誤解決方案
一、環(huán)境準備與依賴安裝
1.更新系統(tǒng)與開發(fā)工具
sudo yum update -y sudo yum groupinstall "Development Tools" -y sudo yum install -y zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel \ readline-devel tk-devel libffi-devel gdbm-devel db4-devel libpcap-devel xz-devel expat-devel
作用:安裝編譯 Python 所需的依賴庫。若缺少依賴可能導致 _ctypes、_ssl 等模塊編譯失敗
2.檢查 OpenSSL 版本
openssl version
若版本低于 1.1.1,需手動升級(Python 3.10 要求 OpenSSL ≥1.1.1):
wget https://www.openssl.org/source/openssl-1.1.1k.tar.gz tar -zxvf openssl-1.1.1k.tar.gz && cd openssl-1.1.1k ./config --prefix=/usr/local/openssl shared zlib make && sudo make install # 配置系統(tǒng)使用新版本 echo "/usr/local/openssl/lib" >> /etc/ld.so.conf ldconfig -v ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl
注意:升級后需驗證 openssl version 是否顯示新版本。
二、編譯安裝 Python 3.10
下載源碼并解壓
wget https://www.python.org/ftp/python/3.10.12/Python-3.10.12.tgz tar -zxvf Python-3.10.12.tgz && cd Python-3.10.12
配置編譯參數(shù)
./configure --prefix=/usr/local/python3.10 \ --enable-optimizations \ --with-openssl=/usr/local/openssl \ --with-ssl-default-suites=openssl
關(guān)鍵參數(shù)說明:
--with-openssl:指定自定義 OpenSSL 路徑(避免SSL module缺失)。--enable-optimizations:優(yōu)化編譯性能,若編譯失敗可去掉此參數(shù)。
編譯與安裝
make -j $(nproc) && sudo make altinstall
使用 altinstall 而非 install:避免覆蓋系統(tǒng)默認 Python 2.7。
驗證安裝
/usr/local/python3.10/bin/python3.10 --version # 應(yīng)輸出 Python 3.10.x /usr/local/python3.10/bin/python3.10 -c "import ssl; print(ssl.OPENSSL_VERSION)" # 驗證 SSL 模塊
三、環(huán)境配置
設(shè)置全局軟鏈接
sudo ln -s /usr/local/python3.10/bin/python3.10 /usr/bin/python3 sudo ln -s /usr/local/python3.10/bin/pip3.10 /usr/bin/pip3
配置環(huán)境變量
echo 'export PATH=$PATH:/usr/local/python3.10/bin' >> /etc/profile source /etc/profile
修復(fù) yum 工具沖突 修改 /usr/bin/yum 和 /usr/libexec/urlgrabber-ext-down 文件,將 #!/usr/bin/python 改為 #!/usr/bin/python2,以解決因 Python 3 導致 yum 失效的問題。
四、常見錯誤及解決方法
zipimport.ZipImportError: can't decompress data; zlib not available 原因:缺少 zlib-devel 庫。 解決:
sudo yum install -y zlib-devel # 重新編譯 Python
ModuleNotFoundError: No module named '_ctypes' 原因:未安裝 libffi-devel。 解決:
sudo yum install -y libffi-devel # 重新編譯 Python
SSL module is not available 或 pip 證書驗證失敗 原因:Python 未正確鏈接 OpenSSL。 解決:
確認編譯時指定 --with-openssl 路徑。
- 若仍報錯,手動修改
Modules/Setup文件,添加以下內(nèi)容后重新編譯:
SSL=/usr/local/openssl _ssl _ssl.c -DUSE_SSL -I$(SSL)/include -L$(SSL)/lib -lssl -lcrypto
動態(tài)庫缺失(如 libssl.so.1.1) 解決:
ln -s /usr/local/openssl/lib/libssl.so.1.1 /usr/lib64/libssl.so.1.1 ln -s /usr/local/openssl/lib/libcrypto.so.1.1 /usr/lib64/libcrypto.so.1.1 ldconfig -v
make altinstall 后無 pip3 原因:altinstall 不會自動創(chuàng)建 pip 軟鏈接。 解決:手動創(chuàng)建軟鏈接或通過 python3 -m ensurepip 安裝。
五、優(yōu)化配置
配置國內(nèi) pip 源
mkdir -p ~/.pip && cat > ~/.pip/pip.conf << EOF [global] index-url = https://mirrors.aliyun.com/pypi/simple/ trusted-host = mirrors.aliyun.com EOF
更新 pip 與 setuptools
pip3 install --upgrade pip setuptools
總結(jié):CentOS 7.9 安裝 Python 3.10 的核心在于 OpenSSL 升級和依賴完整性檢查。若遇到編譯錯誤,優(yōu)先檢查依賴庫是否齊全,并通過環(huán)境變量和編譯參數(shù)確保 Python 正確鏈接所需組件。
到此這篇關(guān)于CentOS 7.9 安裝 Python 3.10 詳細步驟及常見問題解決的文章就介紹到這了,更多相關(guān)CentOS 7.9 安裝 Python 3.10 內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Ubuntu下創(chuàng)建虛擬獨立的Python環(huán)境全過程
virtualenv可以搭建虛擬且獨立的python環(huán)境,可以使每個項目環(huán)境與其他項目獨立開來,保持環(huán)境的干凈,解決包沖突問題。本篇文章講述如何在Linux以及Ubuntu中創(chuàng)建Python虛擬環(huán)境,以及Virtualenvwrapper的安裝使用,需要的朋友可以參考借鑒,下面來一起看看吧。2017-02-02
Python實現(xiàn)Excel表內(nèi)關(guān)鍵字查修改刪
在日常辦公和數(shù)據(jù)處理中,Excel作為最常用的表格工具,承載著海量業(yè)務(wù)數(shù)據(jù),但對于有些場景也會力不從心,本文將使用Python開發(fā)一個Excel表內(nèi)關(guān)鍵字查修改刪工具,需要的可以參考下2025-04-04
Python爬蟲基礎(chǔ)之selenium庫的用法總結(jié)
今天帶大家來學習selenium庫的使用方法及相關(guān)知識總結(jié),文中非常詳細的介紹了selenium庫,對正在學習python的小伙伴很有幫助,需要的朋友可以參考下2021-05-05

