Opened 10 years ago
Closed 9 years ago
#1851 closed defect (fixed)
TolRInside dependiente sólo de R_HOME
Reported by: | Pedro Gea | Owned by: | Pedro Gea |
---|---|---|---|
Priority: | normal | Milestone: | Mantainance |
Component: | R API | Version: | head |
Severity: | normal | Keywords: | |
Cc: |
Description
Aparecen problemas de incompatibilidad entre versiones de R si R_HOME apunta a un directorio pero en el PATH aparece la ruta donde encontrar otra versión de R.
También se encuentran problemas si el paquete de R: Rcpp no está instalado.
Change History (6)
comment:1 Changed 10 years ago by
Owner: | changed from Jorge to Pedro Gea |
---|---|
Status: | new → accepted |
comment:2 Changed 10 years ago by
comment:3 Changed 10 years ago by
Aquí surge un problema con la carga de la librería de R que se debe, en parte, a la función de TOL LoadDynLib
.
Esta función carga una librería, y si ésta necesita de otras, se buscarán por defecto en el directorio de trabajo actual (cwd: current working directory) o en el PATH
.
Como lo normal es que el directorio de trabajo (el del archivo de TOL que se esté compilando) no sea donde se encuentra la dll, ésta no encontrará el resto de dlls con las que comparte carpeta.
Para ello se propone hacer una modificación en la función LoadDynLib
.
comment:4 Changed 10 years ago by
comment:5 Changed 10 years ago by
(In [6769]) Refs #1851
Se chequea la existencia del directorio i386 para asegurar que está instalada la versión de 32 bits.
Se chequea la existencia del paquete Rcpp.
Se aconseja la instalación de tolLink.
Se carga la libraría de R antes de la de TolRInside.
Deberían revisarse estos cambios para Linux.
Para cargar la librería dinámica de TolRInside (
TolRInside.dll
) ésta ha de encontrar la correspondiente de R (R.dll
). Para ello, o bien ésta está en elPATH
, o bien hay que cargarla previamente.Si la librería de R está en el
PATH
pero su versión no corresponde con la indicada en la variable de entornoR_HOME
esto produce graves errores, de modo que para controlar esto se debe realizar la carga manual de la librería de R.