Instalação do Python 3.10 no CentOS 7 com Suporte ao OpenSSL 3.x

Ambiente: CentOS 7.9.2009 (Core) com GCC 4.8.5.

Para atender a requisitos de software moderno, é necessário configurar uma versão atualizada do Python no servidor. A versão Python 3.10 exige o OpenSSL 1.1.1 ou superoir, mas o CentOS 7 fornece uma versão antiga por padrão. A atualização manual do OpenSSL pode gerar erros relacionados a repositórios, como falhas na resolução de host.

Para resolver problemas de repositórios, acesse o diretório /etc/yum.repos.d/ e ajuste os arquivos de configuração, substituindo URLs problemáticas por fontes espelho nacionais. Exemplo de modificação:

baseurl=http://mirrors.aliyun.com/centos/$releasever/os/$basearch/

Fontes espelho recomendadas incluem Aliyun, Tsinghua, USTC, SJTU e Huawei Cloud. Após alterar, execute yum clean all para limpar o cache e teste com yum update.

Passo 1: Instalar dependências

Instale biblioetcas de desenvolvimento necessárias para compilar o Python e o OpenSSL:

sudo yum update -y
sudo yum install -y zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel wget

Passo 2: Compilar e instalar o OpenSSL 3.x

Instale ferramentas de compilação e baixe a fonte do OpenSSL:

sudo yum install -y perl perl-CPAN
cpan IPC::Cmd
wget https://www.openssl.org/source/openssl-3.0.16.tar.gz
tar -zxvf openssl-3.0.16.tar.gz
cd openssl-3.0.16
./config --prefix=/usr/local/ssl3 --openssldir=/usr/local/ssl3 shared zlib
make -j $(nproc)
sudo make install

Configure o PATH e crie links simbólicos se necessário:

echo "export PATH=/usr/local/ssl3/bin:\$PATH" >> ~/.bashrc
source ~/.bashrc
sudo ln -s /usr/local/ssl3/lib64/libssl.so.3 /usr/lib64/libssl.so.3
sudo ln -s /usr/local/ssl3/lib64/libcrypto.so.3 /usr/lib64/libcrypto.so.3

Verifique a instalação com openssl version.

Passo 3: Compilar e instalar o Python 3.10

Baixe e extraia a fonte do Python:

wget https://www.python.org/ftp/python/3.10.10/Python-3.10.10.tgz
tar -zxvf Python-3.10.10.tgz
cd Python-3.10.10

Configure o build para usar o OpenSSL recém-instalado:

./configure --enable-optimizations --with-openssl=/usr/local/ssl3

Compile e instale em modo alternativo para evitar conflitos:

make -j $(nproc)
sudo make altinstall

Passo 4: Validar a instalação

Verifique as versões instaladas:

python3.10 --version
pip3.10 --version

Opcionalmente, crie links simbólicos para uso padrão:

sudo ln -s /usr/local/bin/python3.10 /usr/bin/python3
sudo ln -s /usr/local/bin/pip3.10 /usr/bin/pip3

Tags: Python CentOS 7 openssl yum compilacao

Publicado em 6-9 17:02 por Thomas