Puedo desarrollar un paquete en R y cuando me registre y construir en mi equipo local funciona correctamente. Pero cuando me lo probé en CRAN, tengo un paquete de dependencias de error. Mi paquete depende de dos funciones de otros paquetes.

Si me lista los paquetes bajo el description utilizando Depends o imports, se instala automáticamente con el nuevo paquete? O tengo que llamar explícitamente a la función install.packages("packagename") en virtud de la función que he utilizado en el resto de los paquetes. si todo esto está mal, ¿cuál es la mejor manera de resolver las dependencias del paquete en R finde para pasar el R CMD check y build probar y enviar a CRAN?

Gracias.

  • sí, la lista de los otros paquetes después de Depends: en su DESCRIPTION archivo
  • Una comprobación fácil de usar es para quitar el paquete X de su sistema y ver si su paquete se instala X de la que Depende.
InformationsquelleAutor Mikael | 2013-01-05

2 Comentarios

  1. 61

    En su propio sistema, intente

    install.packages("foo", dependencies=...)

    con el dependencies= argumento se documenta como

    dependencies: logical indicating to also install uninstalled packages
          which these packages depend on/link to/import/suggest (and so
          on recursively).  Not used if ‘repos = NULL’.  Can also be a
          character vector, a subset of ‘c("Depends", "Imports",
          "LinkingTo", "Suggests", "Enhances")’.
    
          Only supported if ‘lib’ is of length one (or missing), so it
          is unambiguous where to install the dependent packages.  If
          this is not the case it is ignored, with a warning.
    
          The default,NA, means ‘c("Depends", "Imports",
          "LinkingTo")’.
    
          ‘TRUE’ means (as from R 2.15.0) to use ‘c("Depends",
          "Imports", "LinkingTo", "Suggests")for ‘pkgs’ and
          ‘c("Depends", "Imports", "LinkingTo")for added
          dependencies: this installs all the packages needed to run
          ‘pkgs’, their examples, tests and vignettes (if the package
          author specified them correctly).

    así que usted probablemente querrá un valor TRUE.

    En su paquete, la lista de lo que se necesita en Depends:, ver la
    Escrito R Extensiones manual que es bastante claro en este sentido.

    • dirk, gracias. Pero ahora tengo el problema en donde es producido. Cuando ejecuto R CMD check en R-forge tiene un paquete de error de dependencia con linux-x86-64 de la plataforma. pero no había ningún error para windows y mac OS. el mensaje de error se parece a esto: using platform: x86_64-unknown-linux-gnu (64-bit) * checking package dependencies ... ERROR Packages required but not available: ‘isa2’ ‘fabia’
    • tan sólo install.packages("foo", dependencies=TRUE) va a hacer el trabajo, para instalar foo con todos los necesarios(depndend en foo) de las bibliotecas?
    • … ¿y si me quita un paquete? Me gustaría quitar todas sus dependencias, siempre que no se requiera por algún otro ya instalado los paquetes?
    • a menudo no es así de simple. Instalación de dependencias puede fallar, si se requiere la compilación de su plataforma (o si la versión que CRAN insiste en la descarga de origen, aunque las distribuciones binarias pueden estar disponibles en otros lugares). xgboost se utiliza para ser conocidas por este, por ejemplo.
  2. 2

    Otra posibilidad es seleccionar la Instalación de las Dependencias de casilla de verificación En la R instalador de paquetes, en la parte inferior derecha:

    Cómo decirle a CRAN para instalar las dependencias de paquetes de forma automática?

Dejar respuesta

Please enter your comment!
Please enter your name here