¿Cómo puedo instalar una nueva versión de R en mi propio directorio /local/data/project/behi
?
¿Cómo puedo instalar una nueva versión de R en mi propio directorio /local/data/project/behi
?
Respuestas:
La forma más fácil de hacer esto es instalar R desde la fuente :
$ wget http://cran.rstudio.com/src/base/R-3/R-3.4.1.tar.gz
$ tar xvf R-3.4.1.tar.gz
$ cd R-3.4.1
$ ./configure --prefix=$HOME/R
$ make && make install
El penúltimo paso es el crítico. Configura R para instalarse en un subdirectorio de su propio directorio de inicio.
Para ejecutarlo en Linux, macOS y sistemas similares, agréguelo $HOME/R/bin
a su PATH
. Luego, los comandos de shell tienen gusto R
y Rscript
funcionarán.
En macOS, tiene otra alternativa: compilarloR.app
e instalarlo en la Applications
carpeta privada de su usuario . Necesitas tener Xcode instalado para hacer esto.
Puede considerar dar en su --prefix=$HOME
lugar. Eso instala R en el nivel superior de su directorio de inicio, de modo que los binarios R
y Rscript
terminan en $HOME/bin
, lo que probablemente ya está en su usuario PATH
. La desventaja es que dificulta la desinstalación posterior, ya que R estaría entremezclado con sus otros $HOME
contenidos.
(Si esto es lo primero que ha instalado $HOME/bin
, es posible que tenga que cerrar sesión y volver a iniciarla para obtener esto en su PATH
, ya que a menudo se agrega condicionalmente solo si $HOME/bin
existe en el momento de inicio de sesión).
Este patrón general se aplica a una gran cantidad de software Unix que puede instalar desde el código fuente. Si el software tiene un configure
script, probablemente comprende la --prefix
opción, y si no, generalmente hay alguna alternativa con el mismo efecto.
Estas características son comunes por varias razones. En orden decreciente de probabilidad, en mi experiencia:
El valor predeterminado seguro ( /usr/local
) no es el correcto $prefix
en todas las situaciones. Circunstancias podrían dictar algo distinto, como /usr
, /opt/$PKGNAME
, etc.
Los sistemas de creación de paquetes binarios ( RPM , DEB , PKG , Cygport ...) generalmente compilan e instalan el paquete en un directorio de preparación especial, luego lo empaquetan de tal manera que se expanda en la ubicación de instalación deseada.
Su caso, donde no puede root
instalar el software en una ubicación típica, por lo que debe instalarlo en su $HOME
lugar.
./configure --prefix=$HOME/R --enable-R-shlib
asegurarse de compilar la biblioteca compartida R. De lo contrario, RStudio se quejará.
configure: error: --with-readline=yes (default) and headers/libs are not available make: *** No targets specified and no makefile found. Stop.
También puede usar la aplicación de envoltura Renv .
extracto
Gestión simple de la versión R: Renv
Renv le permite cambiar fácilmente entre múltiples versiones de R. Es simple, discreto y sigue la tradición de UNIX de herramientas de un solo propósito que hacen bien una cosa.
Renv hace ...
- Le permite cambiar la versión global de R por usuario.
- Proporcionar soporte para versiones R por proyecto.
- Le permite anular la versión R con una variable de entorno.
Construir desde la fuente con ./configure --prefix=/local/data/project/behi ; make ; make install
Si está instalando desde un paquete RPM y se creó reubicable, puede usar
rpm ... --prefix /local/data/project/behi
Pero no todos los paquetes están construidos con binarios reubicables, y no creo que los paquetes de Debian tengan esta opción (aunque podría tener éxito dpkg --instdir
).