Durante una semana he estado intentando instalar un software en una instalación nueva de CentOS 8. El proceso de instalación y el software en sí funcionan bien en CentOS 7, pero me encargaron instalarlo en CentOS 8.
El principal problema en este momento es que faltan algunos paquetes de Python. Específicamente no puedo obtener los siguientes nombres de paquetes:
MySQL-python
libxml2-python
numpy
python-imaging
python2-pyside
python-netifaces
Por supuesto, puedo instalar las bibliotecas a través de pip2, pero no parece satisfacer las dependencias.
¿Tendremos que actualizar las dependencias y tal vez cambiar algún código o hay alguna manera de hacerlo funcionar como está? Preferiblemente con EPEL 8, pero de todos modos recibo los mismos errores con EPEL 7.
Respuesta1
CentOS 8 se basa en RHEL 8, que cambió a Python 3 como predeterminado. Muchos paquetes de Python 2 ya no están disponibles o han cambiado de nombre; por ejemplo, NumPy para Python 2 es python2-numpy
.
Desde una perspectiva puramente Pythonic, el mejor enfoque en su situación es utilizar un entorno virtual: instale el python2-virtualenv
paquete CentOS, luego ejecute
python2 -m virtualenv --system-site-packages yourenv
(reemplazando yourenv
con el nombre que quieras darle a tu entorno virtual, que también será el directorio en el que se creará), y activa el entorno con
source yourenv/bin/activate
Luego puede instalar sus dependencias de Python pip install
sin afectar el sistema fuera del entorno virtual.
Sin embargo, tengo la impresión de que estás utilizando un paquete que depende de paquetes RPM. Esto será más difícil de solucionar y el mejor enfoque dependerá de otros factores. Si el software empaquetado está disponible para Python 3, buscaría empaquetarlo en su lugar; de lo contrario, podría intentar reelaborar el paquete existente, pero hay muchas posibilidades de que sea más complicado que usar un entorno virtual...
VerPython en RHEL 8para detalles.