Estoy desarrollando mi primer paquete R (usando R 2.13, Ubuntu 10.10). Digamos que es foo y digamos que el código en el directorio/R comienza con la biblioteca línea (bar), donde barra es un paquete existente, en CRAN, en el que foo depende. Mi archivo de descripción contiene la línea:¿Cómo instalar las dependencias cuando se usa "R CMD INSTALL" para instalar los paquetes R?
Depends: bar
Cuando el paquete foo está listo para la prueba, lo instalo localmente usando:
R CMD INSTALL foo_1.0.tar.gz
Sin embargo, si barra no está instalado, veo:
ERROR: dependency ‘bar’ is not available for package ‘foo’
Obviamente, si mi foo eran instalado desde CRAN usando install.packages(), bar se instalaría al mismo tiempo. Entonces mi pregunta es: ¿cómo puedo asegurar que el paquete CRAN bar esté instalado, si es necesario, cuando instale mi paquete foo usando R CMD INSTALL? ¿Es esto un trabajo para un script de configuración?
Sí, tengo entendido que DESCRIPTION declara las dependencias, pero no las instala. Y el problema con la configuración de repos = NULL para el tarball es que los paquetes de dependencia no se obtendrán de CRAN. Estoy tratando de ponerme en la piel de un usuario que descarga e instala mi tarball; ¿Deberían esperar leer la documentación y los mensajes de error o hay una solución? – neilfws
La solución es que coloque su paquete en CRAN y luego haga que el usuario instale paquetes y obtenga las dependencias. Supongo que puede haber alguna razón por la que no puedes hacer esto. La instalación desde archivos tar no es una operación de "usuario simple", por lo que no se les aplica una cuchara, y deberían poder leer los mensajes de error y su documentación. – Spacedman
Derecha. Creo que cuando se prueba a nivel local, sé que tengo las dependencias y si va a CRAN, CRAN se encarga de las dependencias, así que realmente no es un problema :) – neilfws