Pregunta

En nuestro servidor, R 2.12.1 se instala siguiendo las instrucciones que aparecen en http://cran.r-project.org/bin/linux/debian/ utilizando apt-get install etc etc.

Debido a las circunstancias que el viejo lenny de la máquina no ha sido actualizado a la nueva versión estable de debian, y parece que esto no se trata de que suceda pronto.Como parte de la investigación que aquí depende de la versión más reciente de VGAM, necesitamos la R 2.14.0 instalado en debian.Pero en el fin de mantener el viejo código que se ejecuta, no podemos caer en el R 2.12.1 (instalación de la VGAM 0.8.4 en esta versión da errores).

Así que tenemos que instalar 2 R-versiones.De lo poco que he entendido, si simplemente usamos apt-get upgrade la versión anterior será reemplazada por la nueva.He estado yendo a través de montones de documentación, pero no puedo encontrar la manera óptima de hacerlo.

La única cosa que yo podía imaginar ahora, es tratar de construir el último R de la fuente, pero mis compañeros no estaban muy interesados en la idea y me llevó a la primera a buscar otra solución.Cualquier info que me perdí, o es alguien dispuesto a mostrarme el pequeño truco para hacer esto?Si la construcción de la fuente es la solución, me gustaría conocer las dificultades o posibles problemas.

¿Fue útil?

Solución

Como he mencionado en los comentarios, este es teóricamente como algunos paquete de familias (Emacs, PostgreSQL, ...) permiten múltiples versiones concurrentes.

No puedo ofrecer que ahora usamos /usr/{share,lib}/R que conflictos.Si yo fuera a hacer que /usr/{share,lib}/R-$version y, a continuación, utilizar dpkg-alternatives para voltear a un valor predeterminado preferido, en el que pudimos hacerlo.El problema es la transición.Esta característica es utilizada por una minoría de usuario, consiguiendo que puede introducir errores por una mayoría til esta es estable.Además, no tengo el tiempo libre (pero si alguien quiere hacerlo, por favor, hacerlo).

En tanto, usted puede

  1. posiblemente el uso de una característica avanzada de dpkg y descomprimir en un directorio local en lugar de la predeterminada por debajo de / -- así /opt/R/oldversions/2.12.1 debería ser posible.R podría incluso correr, es necesario volver a definir $RHOME en consecuencia.

  2. sólo construir variantes locales en /usr/local si realmente debe

  3. si un particular CRAN / no-CRAN paquete demande la necesidad de una particular versión de R, arreglar el maldito paquete ya!;-)

Finalmente, este es un tema para r-sig-debian como por ejemplo, el CRAN mantenedor de Michael y Johannes no va a leer este hilo aquí.

Otros consejos

Puede instalar diferentes versiones de software mediante la correcta compilación de las banderas.Al ejecutar el script configure --help usted debe ver una opción para ver la instalación de la raíz.

Echa un vistazo a

./configure --help
...
Installation directories:
  --prefix=PREFIX         install architecture-independent files in PREFIX
                          [/usr/local]

así que usted puede instalar R-2.14 a:

/usr/local/R/2.14

y usted puede instalar R-2.12:

/usr/local/R/2.12

al lanzar el script de configuración de hacer:

./configure --prefix=/usr/local/R/2.14

y así sucesivamente.

Yo creo que si no hay ninguna repo de debian que ofrece múltiples versiones, es difícil mantener dos versiones de R se ejecuta sin problemas y sin necesidad de compilar R de la fuente.

Lo que suelen hacer es instalar R en mi casa dir como nuestro instituto no nos da privilegios de root.Para instalar una fuente de la versión de R para todo el sistema, puede instalar esto en un directorio separado (por ejemplo,/opt/R2.14) y el uso de:

./configure --prefix=/opt/R2.14/

El paso final es crear un enlace simbólico a la R binario:

ln -s /opt/R2.14/bin/R /usr/bin/R2.14

Los usuarios pueden de inicio dos versiones de R (R y R2.14).Espero que esto ayude!

Es cierto que el edificio I de la fuente es muy muy fácil (incluso yo puedo hacerlo!), como siempre que se sepa el siguiente comando para ejecutar en primer lugar :

apt-get build-dep r-base

de lo contrario usted puede obtener falta de la biblioteca de los errores de tipo de make.Gracias a Dirk publicación que la joya en el pasado.No he visto que en el manual, el README o preguntas frecuentes.

Entonces, es sólo :

./configure
make

Supongo que esto podría ser una consideración para usted, entonces:hace R uso estático o dinámico del sistema de bibliotecas?Puede un auto-construido R enlace a las diferentes bibliotecas de la pre-envasados binaria R?(No sé).Cuánto vas a que depende de la importancia que la aplicación de R se creo y que el sistema de bibliotecas son críticas para usted.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top