CentOS下如何顺利安装Python
导读:CentOS下顺利安装Python的实用指南 一 版本选择与准备 检查现有版本:python -V、python3 -V,确认是否需要新装或升级。 版本建议: CentOS 7:默认 Python 2.7.5(已停止维护),仓库常见 P...
CentOS下顺利安装Python的实用指南
一 版本选择与准备
- 检查现有版本:
python -V、python3 -V,确认是否需要新装或升级。 - 版本建议:
- CentOS 7:默认 Python 2.7.5(已停止维护),仓库常见 Python 3.6.8(已于2021-12停止维护),建议安装 3.8/3.9/3.10 等新版本。
- CentOS 8:默认无 Python 2,仓库常见 Python 3.9.6(支持至2025-10),如需 3.10+ 建议源码编译或使用版本管理工具。
- 准备动作:以 root 或具备 sudo 权限执行;先
yum update -y更新系统。
二 三种常用安装方式
-
方式A 使用 YUM 快速安装(适合快速上手与稳定版本)
- 安装命令:
sudo yum install python3 -y(或按需安装特定模块如python3-venv)。 - 验证:
python3 --version、pip3 --version。 - 说明:版本受仓库限制;如需 3.10+ 或特定小版本,请改用源码或 pyenv。
- 安装命令:
-
方式B 源码编译安装(适合指定版本与可定制优化)
- 安装依赖:
sudo yum groupinstall "Development Tools" -y
sudo yum install openssl-devel bzip2-devel libffi-devel zlib-devel readline-devel sqlite-devel wget -y - 下载与解压:
wget https://www.python.org/ftp/python/3.10.2/Python-3.10.2.tgz & & tar xvf Python-3.10.2.tgz & & cd Python-3.10.2 - 配置与编译:
- 通用:
./configure --enable-optimizations - 指定安装前缀(可选):
./configure --prefix=/usr/local/python3.10 - 编译加速:
make -j "$(nproc)"
- 通用:
- 安全安装:使用
sudo make altinstall避免覆盖系统默认 python。 - 验证:
python3.10 -V、pip3.10 --version。 - 便捷调用(可选):创建软链或在 PATH 中加入安装前缀的 bin 目录。
- 安装依赖:
-
方式C 使用 pyenv 管理多版本(适合开发与测试多版本共存)
- 安装依赖:
sudo yum install git -y - 安装 pyenv:
curl https://pyenv.run | bash - 配置环境(写入
~/.bashrc或~/.zshrc):
export PATH="$HOME/.pyenv/bin:$PATH"
eval "$(pyenv init --path)"
eval "$(pyenv init -)" - 使用:
pyenv install 3.9.9、pyenv global 3.9.9,验证python --version。 - 可选:启用
pyenv virtualenv插件以获得pyenv virtualenv命令。
- 安装依赖:
三 安装后配置与虚拟环境
- 虚拟环境(强烈推荐,隔离依赖):
- 安装 venv 包:
sudo yum install python3-venv -y - 创建与激活:
python3 -m venv venv & & source venv/bin/activate - 退出:
deactivate
- 安装 venv 包:
- 可执行文件与 PATH:
- 若使用自定义前缀,建议将
/usr/local/python3.x/bin加入PATH或创建软链(如ln -s /usr/local/python3.10/bin/python3.10 /usr/bin/python3.10)。
- 若使用自定义前缀,建议将
- 多版本切换:
- 简单场景可用
alternatives配置系统默认python;复杂多版本建议继续使用 pyenv。
- 简单场景可用
四 常见问题与排错要点
- 不要覆盖系统 Python:编译安装务必使用 make altinstall,避免影响 yum/dnf 等系统工具。
- SSL/TLS 编译失败:
- 现象:
Could not build the ssl module! Python requires a OpenSSL 1.1.1 or newer - 处理:安装 openssl11 及开发包(
yum install openssl11 openssl11-devel -y),并在 configure 前设置:
export CFLAGS=$(pkg-config --cflags openssl11)
export LDFLAGS=$(pkg-config --libs openssl11)
然后重新./configure & & make -j "$(nproc)" & & sudo make altinstall。
- 现象:
- 编译依赖不全:按需补齐 zlib-devel、bzip2-devel、libffi-devel、readline-devel、sqlite-devel、ncurses-devel、tk-devel、gdbm-devel、xz-devel 等。
- 老系统工具链过旧:在 CentOS 7 上若需更高版本 GCC 以编译新版 Python,可考虑 devtoolset。
- 多版本管理策略:开发/测试环境优先 pyenv;生产环境谨慎变更系统默认解释器,尽量在虚拟环境或容器中使用。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: CentOS下如何顺利安装Python
本文地址: https://pptw.com/jishu/763528.html
