Fork me on GitHub

目录

    install-python3.sh

    #!/usr/bin/env python
    function compileOpenssl() {
    #安装zip,zlib
    yum install -y zlib-devel zip zip-devel libffi libffi-devel gcc wget
    #编译安装openssl库
    rm -rf /usr/local/openssl
    mkdir -p /usr/local/openssl
    cd /usr/local/openssl
    wget https://www.openssl.org/source/openssl-1.1.1a.tar.gz
    
    tar -zxvf openssl-1.1.1a.tar.gz
    
    cd openssl-1.1.1a
    ./config --prefix=/usr/local/openssl no-zlib #不需要zlib
    make
    make install
    
    mv /usr/bin/openssl /usr/bin/openssl.bak
    mv /usr/include/openssl/ /usr/include/openssl.bak
    
    ln -s /usr/local/openssl/include/openssl /usr/include/openssl
    ln -s /usr/local/openssl/lib/libssl.so.1.1 /usr/local/lib64/libssl.so
    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
    ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl
    
    echo "/usr/local/openssl/lib" >> /etc/ld.so.conf
    ldconfig -v
    }
    
    
    
    function compilePython() {
    version=$1
    #编译安装python
    rm -rf /tmp/Python*.tar.xz
    cd /tmp
    wget https://registry.npmmirror.com/-/binary/python/${version}/Python-${version}.tar.xz
    tar xvf   Python-${version}.tar.xz
    cd Python-${version};
    ./configure --prefix=/usr/local/python3 --with-openssl=/usr/local/openssl --with-system-ffi
    make
    make install
    echo export PATH=/usr/local/python3/bin:\$PATH >> /etc/profile
    
    }
    
    function main() {
        compileOpenssl
        compilePython $1
    }
    
    main $1
    

    运行方式 ,参数为版本号
    bash install-python3.sh 3.10.18

    经过较长时间的编译和安装后,重新登录主机,执行python3 --version可以检查对应版本的信息

    posted on 2025-07-25 15:18  anyux  阅读(13)  评论(0)    收藏  举报