Instalar Python 3 en Centos 7 desde las fuentes

En el artículo hoy vamos a ver como instalar Python 3 en Centos 7 desde las fuentes. Para ello debemos cumplir con una serie de requisitos en nuestro servidor.

Python es un lenguaje de programación interpretado muy popular y que cada vez necesito utilizar más en mi día a día, de administrador de sistemas.

Como es bastante común que convivan diferentes versiones de Python en un mismo sistema, este artículo también va para mis apuntes, a modo de Wiki.

Python 3 en Centos 7 desde las fuentes

Antes de nada, debemos instalar los siguientes paquetes en el sistema:

  1. yum install yum-utils make wget

Si queremos también podemos utilizar el grupo de paquetes para desarrolladores, aunque no es imprescindible:

  1. yum group install "Development Tools"

Con el seguiente comando comprobamos si cumplimos con todos los requisitos, si no es así se encargará de instalar los paquetes o librerías faltantes:

  1. yum-builddep python

Nos descargamos la versión de Python que nos interese, que en este caso es la 3.7.1, que es la más reciente, a fecha de creación de este artículo.

  1. wget https://www.python.org/ftp/python/3.7.1/Python-3.7.1.tgz

Descomprimimos el fichero descargado:

  1. tar xvf Python-3.7.1.tgz

Accedemos a la carpeta descomprimida y compilamos:

  1. cd Python-3.7.1
  2. ./configure
  3. make

En este punto, al ejecutar “make install” , me muestran los siguientes errores:

  1. zipimport.ZipImportError: can't decompress data; zlib not available
  2. ModuleNotFoundError: No module named '_ctypes

Para evitarlo, instalamos los siguientes paquetes:

  1. yum install zlib-devel libffi-devel

E instalamos:

  1. sudo make install

Ya podemos encontrar el binario en la ubicación “/usr/local/bin”

  1. ls /usr/local/bin/python3.7
  2. /usr/local/bin/python3.7

Si lo ejecutamos:

  1. Python 3.7.1 (default, Nov 21 2018, 16:42:43)
  2. [GCC 4.8.5 20150623 (Red Hat 4.8.5-28)] on linux
  3. Type "help", "copyright", "credits" or "license" for more information.
  4. >>>

Y esto es todo en lo que respecta a su instalación.

Si queremos utilizar esta versión u otra que escojamos por defecto, solo debemos editar el fichero : “~/.bashrc”
Y añadir:

  1. alias python='/usr/local/bin/python3.7'

Espero que el artículo, aunque es un pequeña píldora informativa, os pueda servir en algún momento. Nos vamos leyendo.

Fuentes consultadas:

Linuxconfig.org – Compile and install Python 3 on Centos 7 from sources
Cibyrciti.biz – Centos and RHEL 7 linux install compile development
Unix.stackexchange.com – Zimimport can’t decompress data zlib not available
Stackoverflow – Python3 importerror no module named cytpes