2012-10-12 91 views
8

Estoy configurando una nueva computadora portátil con Gentoo y deseo instalar R (¡como lo hago en todas mis computadoras!).Problemas al instalar los paquetes R

Sin embargo, me he topado un poco un problema cuando se trata de instalar paquetes.

intentó por primera vez a:

> install.packages(c("ggplot2", "plyr", "reshape2")) 

Y debidamente descargar todos los paquetes y sus dependencias. Sin embargo, no instalaron informes.

Error in library(data.table) : there is no package called ‘data.table’ 
Calls: .First -> library 
Execution halted 
Error in library(data.table) : there is no package called ‘data.table’ 
Calls: .First -> library 
Execution halted 
Error in library(data.table) : there is no package called ‘data.table’ 
Calls: .First -> library 
Execution halted 
Error in library(data.table) : there is no package called ‘data.table’ 
Calls: .First -> library 
Execution halted 
Error in library(data.table) : there is no package called ‘data.table’ 
Calls: .First -> library 
Execution halted 
Error in library(data.table) : there is no package called ‘data.table’ 
Calls: .First -> library 
Execution halted 
Error in library(data.table) : there is no package called ‘data.table’ 
Calls: .First -> library 
Execution halted 
Error in library(data.table) : there is no package called ‘data.table’ 
Calls: .First -> library 

No es un problema que voy a instalar el paquete data.table, por desgracia ...

> install.packages("data.table") 
trying URL 'http://cran.uk.r-project.org/src/contrib/data.table_1.8.2.tar.gz' 
Content type 'application/x-gzip' length 818198 bytes (799 Kb) 
opened URL 
================================================== 
downloaded 799 Kb 

Error in library(data.table) : there is no package called ‘data.table’ 
Calls: .First -> library 
Execution halted 

The downloaded source packages are in 
    ‘/tmp/RtmpbQtALj/downloaded_packages’ 
Updating HTML index of packages in '.Library' 
Making packages.html ... done 
Warning message: 
In install.packages("data.table") : 
    installation of package ‘data.table’ had non-zero exit status 

y no hay ninguna indicación de por qué la instalación ha fallado en absoluto, por lo que no tengo idea ¿Cómo resolver esto? Un traceback() tampoco está disponible.

GCC está instalado y configurado como muestra la salida de gcc-config (y el hecho de que puedo instalar otro software desde la fuente no es un problema).

# gcc-config -l 
[1] x86_64-pc-linux-gnu-4.6.3 * 

Discutido en cuanto a cómo resolver esto. Cualquier idea o idea sobre cómo obtener más información de install.packages() bienvenida.

EDIT: contenido de .First como solicitado ....

> .First 
function() 
{ 
    library(data.table) 
    library(foreign) 
    library(ggplot2) 
    library(Hmisc) 
    library(lattice) 
    library(plyr) 
    library(rms) 
    library(xtable) 
    cat("\nWelcome at", date(), "\n") 
} 

EDIT 2: No Rprofile.site pero hay/usr/lib64/R/biblioteca/base/R/Rprofile que tiene. ...

# cat /usr/lib64/R/library/base/R/Rprofile 
### This is the system Rprofile file. It is always run on startup. 
### Additional commands can be placed in site or user Rprofile files 
### (see ?Rprofile). 

### Notice that it is a bad idea to use this file as a template for 
### personal startup files, since things will be executed twice and in 
### the wrong environment (user profiles are run in .GlobalEnv). 

.GlobalEnv <- globalenv() 
attach(NULL, name = "Autoloads") 
.AutoloadEnv <- as.environment(2) 
assign(".Autoloaded", NULL, envir = .AutoloadEnv) 
T <- TRUE 
F <- FALSE 
R.version <- structure(R.Version(), class = "simple.list") 
version <- R.version   # for S compatibility 

## for backwards compatibility only 
R.version.string <- R.version$version.string 

## NOTA BENE: options() for non-base package functionality are in places like 
##   --------- ../utils/R/zzz.R 

options(keep.source = interactive()) 
options(warn = 0) 
# options(repos = c(CRAN="@[email protected]")) 
# options(BIOC = "http://www.bioconductor.org") 

options(timeout = 60) 
options(encoding = "native.enc") 
options(show.error.messages = TRUE) 
## keep in sync with PrintDefaults() in ../../main/print.c : 
options(scipen = 0) 
options(max.print = 99999)# max. #{entries} in internal printMatrix() 
options(add.smooth = TRUE)# currently only used in 'plot.lm' 
options(stringsAsFactors = TRUE) 
if(!interactive() && is.null(getOption("showErrorCalls"))) 
    options(showErrorCalls = TRUE) 

local({dp <- Sys.getenv("R_DEFAULT_PACKAGES") 
     if(identical(dp, "")) # marginally faster to do methods last 
      dp <- c("datasets", "utils", "grDevices", "graphics", 
        "stats", "methods") 
     else if(identical(dp, "NULL")) dp <- character(0) 
     else dp <- strsplit(dp, ",")[[1]] 
     dp <- sub("[[:blank:]]*([[:alnum:]]+)", "\\1", dp) # strip whitespace 
     options(defaultPackages = dp) 
    }) 

## Expand R_LIBS_* environment variables. 
Sys.setenv(R_LIBS_SITE = 
      .expand_R_libs_env_var(Sys.getenv("R_LIBS_SITE"))) 
Sys.setenv(R_LIBS_USER = 
      .expand_R_libs_env_var(Sys.getenv("R_LIBS_USER"))) 

.First.sys <- function() 
{ 
    for(pkg in getOption("defaultPackages")) { 
     res <- require(pkg, quietly = TRUE, warn.conflicts = FALSE, 
         character.only = TRUE) 
     if(!res) 
      warning(gettextf('package %s in options("defaultPackages") was not found',  sQuote(pkg)), 
        call.=FALSE, domain = NA) 
    } 
} 

.OptRequireMethods <- function() 
{ 
     if("methods" %in% getOption("defaultPackages")) { 
     res <- require("methods", quietly = TRUE, warn.conflicts = FALSE, 
         character.only = TRUE) 
     if(!res) 
      warning('package "methods" in options("defaultPackages") was not found', call.=FALSE) 
    } 
} 

if(nzchar(Sys.getenv("R_BATCH"))) { 
    .Last.sys <- function() 
    { 
     cat("> proc.time()\n") 
     print(proc.time()) 
    } 
    ## avoid passing on to spawned R processes 
    ## A system has been reported without Sys.unsetenv, so try this 
    try(Sys.setenv(R_BATCH="")) 
} 
###-*- R -*- Unix Specific ---- 

.Library <- file.path(R.home(), "library") 
.Library.site <- Sys.getenv("R_LIBS_SITE") 
.Library.site <- if(!nchar(.Library.site)) file.path(R.home(), "site-library") else unlist(strsplit(.Library.site, ":")) 
.Library.site <- .Library.site[file.exists(.Library.site)] 

invisible(.libPaths(c(unlist(strsplit(Sys.getenv("R_LIBS"), ":")), 
         unlist(strsplit(Sys.getenv("R_LIBS_USER"), ":") 
        )))) 

local({ 
## we distinguish between R_PAPERSIZE as set by the user and by configure 
papersize <- Sys.getenv("R_PAPERSIZE_USER") 
if(!nchar(papersize)) { 
    lcpaper <- Sys.getlocale("LC_PAPER") # might be null: OK as nchar is 0 
    papersize <- if(nchar(lcpaper)) 
     if(length(grep("(_US|_CA)", lcpaper))) "letter" else "a4" 
    else Sys.getenv("R_PAPERSIZE") 
} 
options(papersize = papersize, 
     printcmd = Sys.getenv("R_PRINTCMD"), 
     dvipscmd = Sys.getenv("DVIPS", "dvips"), 
     texi2dvi = Sys.getenv("R_TEXI2DVICMD"), 
     browser = Sys.getenv("R_BROWSER"), 
     pager = file.path(R.home(), "bin", "pager"), 
     pdfviewer = Sys.getenv("R_PDFVIEWER"), 
     useFancyQuotes = TRUE) 
}) 

## non standard settings for the R.app GUI of the Mac OS X port 
if(.Platform$GUI == "AQUA") { 
    ## this is set to let RAqua use both X11 device and X11/TclTk 
    if (Sys.getenv("DISPLAY") == "") 
    Sys.setenv("DISPLAY" = ":0") 

    ## this is to allow gfortran compiler to work 
    Sys.setenv("PATH" = paste(Sys.getenv("PATH"),":/usr/local/bin",sep = "")) 
}## end "Aqua" 

local({ 
    tests_startup <- Sys.getenv("R_TESTS") 
    if(nzchar(tests_startup)) source(tests_startup) 
}) 
+0

¿Qué tiene en su Rprofile? Específicamente, ¿cómo has definido '.First'? – GSee

+0

No tengo un .Rprofile (ya que estoy instalando los paquetes globalmente como root, pero uso R como mi usuario de inicio de sesión). He agregado la salida/contenido de .Primero arriba de – slackline

+0

¿Qué hay en Rprofile.site? – GSee

Respuesta

6

Parece que data.table no está instalado para el usuario que ejecuta el comando install.packages. Creo que ajustar esa función .First en if (interactive()) { } sería una buena idea en general. De lo contrario, debe instalar data.table y cualquier otro paquete que se cargue al inicio, ya que install.packages ejecuta el archivo .Rprofile al iniciar

+0

Eso funcionó, ya que estoy iniciando R y luego ejecutando install.packages() en lugar del método alternativo R CMD INSTALL reinicié R con el indicador --vanilla y la instalación de data.tables y todos los otros paquetes funcionó bien . Gracias por el puntero. – slackline

Cuestiones relacionadas