martes, 21 de julio de 2020

Fedora, R, los cambios de versión e infierno de dependencias

Bien. Como podéis ver esta pandemia nos ha llevado a que hagamos menos entradas. El teletrabajo consume más tiempo y te deja más cansado y un poco harto del ordenador.
En nuestro teletrabajo ha dominado la situación Teams, del amigo Microsoft, que para los linuxeros, o al menos para mi han sido un problema. De eso hablaremos más tarde. Mi otro teletrabajo es seguir haciendo estadística en mis ordenadores. Esta vez he tenido un dos problemas. Fedora ha tardado en introducir la versión 4 de R en sus repositorios, y eso ha supuesto dos dificultades en momentos distintos.
Primer peoblema; al haber instalado Fedora 32 de manera limpia, he tenido que instalar de nuevo R sin paquete alguno, por lo que los tuve que añadir todos, que son bastantes.


La versión 4.0 ha introducido algunas características especiales que hacen que la mayor parte de los paquetes tengan que actualizarse, y como yo aun estaba en la 3.6.3, muchas veces me he encontrado en los repositorios con el mensaje de "no hay versión para R 3.6.3". Normalmente cambio de espejo y voy a Nueva Zelanda, de donde R empezó, y suelen tenerlo todo, pero esta vez no ha sido así. Y eso obliga a bajar el código fuente de la versión anterior e instalarlo, a veces con problemas de dependencia. Un pequeño problema...
Segundo problema, después de haber solucionado el primero; ayer R puso a nuestra disposición R 4.0.2. Una vez instalada la versión 3.6.3 y todos los paquetes que uso, al actualizar el sistema, y cambiar R, empezaron los siguientes problemas. Muchos de los algoritmos que he estado utilizando estos días, (MCA, Cluster...) han requerido versiones preparadas para la versión 4 de R. Teóricamente se debería haber solucionado con update.packages(), pero no es así. He tenido que ir instalando paquete a paquete, uno a uno, con infierno de dependencias de hasta 7 niveles de profundidad. Por suerte, al haberlo hecho por la mañana en el ordenador del trabajo, ya dejé apuntadas las ramas de los árboles de dependencia, y en vez de dos horas he tardado una en casa por la tarde (ahora, desde que nos dejan mover, solo teletrabajo por la tarde), pero he acabado con 4 páginas de ramas hasta terminar el árbol de dependencias.
Es lo que hay. ¿Por qué no se ha solucionado con update.packages? ¿En que me he equivocado? Si lo llego a saber, lo desinstalo todo y lo vuelvo a instalar desde el inicio, y no me aparecería continuamente, más o menos, por que no me acuerdo exactamente (y en inglés, claro),
"El paquete x, es necesario para instalar el paquete y; la versión disponible es anterior a R v 4. Por favor instale una versión más moderna..." decenas de veces, y hasta 7 veces z, para y, b para z, d para b, k, para d... Y en Linux, no como en Windows, los paquetes se compilan.
Como antiguamente en Linux, más o menos
Eso sí, esta vez RStudio no ha protestado.

2 comentarios:

  1. Yo estoy con una M de problema. Algunos paquetes que utilizo no funciona en mi versión de R (3.2), y después de 4 días sin ningún avance ya quiero tirar esta M de computo. Alguien puede darme una luz de como hago actualización del R en Fedora?

    ResponderEliminar
    Respuestas
    1. Ahora mismo en Fedora la versión 34 se había quedado con R 4.0.5. Para actualizar a 4.1.1 he tenido que poner Fedora 35 beta. Sin embargo ya está Fedora 35 estable. Lo mejor es actualizar el sistema a 35 y ya instala Fedora 4.1.1

      Eliminar