CentOS 8 部署 Python 3.12.3 完整教程

  • CentOS 8 部署 Python 3.12.3 完整教程


    环境准备

    已配置环境:

    • 系统:CentOS 8(IP: 192.168.15.15)
    • 服务:sshd/nscd已启用 | firewalld/selinux已关闭
    • Yum源:华为云镜像源
    • 工具预装:tree, wget, vim等

    一、安装编译依赖

    sudo dnf update -y
    sudo dnf groupinstall "Development Tools" -y
    sudo dnf install gcc openssl-devel bzip2-devel libffi-devel \
                     zlib-devel ncurses-devel sqlite-devel \
                     readline-devel tk-devel xz-devel libuuid-devel -y
    

    二、下载并编译 Python 3.12.3

    # 下载源代码
    cd /usr/src
    sudo wget https://www.python.org/ftp/python/3.12.3/Python-3.12.3.tgz
    sudo tar xzf Python-3.12.3.tgz
    
    # 编译安装(启用优化)
    cd Python-3.12.3
    sudo ./configure --enable-optimizations
    sudo make altinstall  # 保留系统默认Python
    

    关键参数说明
    --enable-optimizations:启用编译器优化,提升10%-20%性能
    altinstall:防止覆盖系统默认python3版本


    三、验证安装

    python3.12 --version
    # 应输出:Python 3.12.3
    
    # 检查pip可用性
    pip3.12 --version
    

    四、配置环境

    # 创建软链接(如需作为默认python3)
    sudo ln -s /usr/local/bin/python3.12 /usr/bin/python3
    sudo ln -s /usr/local/bin/pip3.12 /usr/bin/pip3
    
    # 更新pip到最新版本(可选)
    pip3.12 install --upgrade pip
    

    一键安装 Shell 脚本

    #!/bin/bash
    # CentOS 8 Python 3.12.3 一键安装脚本
    # 要求:sudo权限|已关闭selinux
    
    echo "▶ 开始安装Python 3.12.3依赖..."
    sudo dnf update -y
    sudo dnf groupinstall "Development Tools" -y
    sudo dnf install gcc openssl-devel bzip2-devel libffi-devel \
                    zlib-devel ncurses-devel sqlite-devel \
                    readline-devel tk-devel xz-devel libuuid-devel -y
    
    echo "▶ 下载解压源码..."
    cd /usr/src
    sudo wget https://www.python.org/ftp/python/3.12.3/Python-3.12.3.tgz
    sudo tar xzf Python-3.12.3.tgz
    
    echo "▶ 编译安装(优化模式)..."
    cd Python-3.12.3
    sudo ./configure --enable-optimizations
    sudo make altinstall
    
    echo "✅ 安装完成!验证版本:"
    /usr/local/bin/python3.12 --version
    
    echo "⏹ 建议操作:"
    echo "  使用:/usr/local/bin/python3.12"
    echo "  Pip路径:/usr/local/bin/pip3.12"
    echo "  如需设置默认Python:sudo ln -s /usr/local/bin/python3.12 /usr/bin/python3"
    

    使用说明

    1. 保存为 install_python312.sh

    2. 赋予执行权限:

      chmod +x install_python312.sh
      
    3. 运行脚本:

      ./install_python312.sh
      

    常见问题解决

    1. 编译时报错 Could not import runpy
      安装缺失依赖:

      sudo dnf install zlib-static -y && make clean && make altinstall
      
    2. Pip安装慢
      更换国内镜像源:

      pip3.12 config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
      

    实测编译耗时:8核虚拟机约15分钟,单核云服务器约40分钟


posted @ 2025-07-15 12:57  昵-称  阅读(91)  评论(0)    收藏  举报