close Warning: Can't synchronize with repository "(default)" (/var/svn/tolp does not appear to be a Subversion repository.). Look in the Trac log for more information.

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 Pedro Gea

Owner: changed from Jorge to Pedro Gea
Status: newaccepted

comment:2 Changed 10 years ago by Pedro Gea

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 el PATH, 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 entorno R_HOME esto produce graves errores, de modo que para controlar esto se debe realizar la carga manual de la librería de R.

comment:3 Changed 10 years ago by Pedro Gea

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 Pedro Gea

(In [6768]) Refs #1851
Se modifica LoadDynLib de modo que el directorio utilizado por defecto para la carga de la librería sea su propio directorio y no el directorio de trabajo actual en ese momento (cwd).

comment:5 Changed 10 years ago by Pedro Gea

(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.

comment:6 Changed 9 years ago by Pedro Gea

Resolution: fixed
Status: acceptedclosed

Véase [6833].

Note: See TracTickets for help on using tickets.