2012-10-12 11 views
8

Ich richte einen neuen Laptop ein, auf dem Gentoo läuft und möchte R installieren (wie ich es auf allen meinen Computern tue!).Probleme bei der Installation von R-Paketen

Ich habe jedoch ein kleines Problem, wenn es um die Installation von Paketen geht.

Ich versuchte zuerst:

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

Und es ordnungsgemäß alle Pakete und deren Abhängigkeiten heruntergeladen. Sie haben jedoch keine Berichte installiert.

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 

ein Problem nicht werde ich installieren Sie einfach die data.table Paket, leider ...

> 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 

Und es gibt keinen Hinweis darauf, warum die Installation überhaupt ausgefallen ist, so habe ich keine Ahnung, Wie löse ich das? Ein traceback() ist ebenfalls nicht verfügbar.

GCC ist installiert und konfiguriert, wie die Ausgabe von GCC-Config zeigt (und die Tatsache, dass ich andere Software von der Quelle installieren kann kein Problem).

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

Stumped, wie man über dieses Problem zu lösen. Irgendwelche Gedanken oder Ideen, wie man mehr Informationen aus install.packages() Willkommen erhält.

EDIT: Inhalt .First wie gewünscht ....

> .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: Keine Rprofile.site aber es ist/usr/lib64/R/Bibliothek/base/R/Rprofile, die hat. ...

# 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

Was haben Sie in Ihrem RProfile? Genauer gesagt, wie haben Sie '.First' definiert? – GSee

+0

Ich habe kein .Rprofile (wie ich die Pakete global als root installieren, aber R als meine Login-Benutzer verwenden). Ich habe die Ausgabe/Inhalte von .First über – slackline

+0

hinzugefügt Was ist in Rprofile.site? – GSee

Antwort

6

Sieht aus wie data.table ist für den Benutzer nicht installiert, der die install.packages Befehl ausgeführt wird. Ich denke, die .First Funktion in if (interactive()) { } zu wickeln wäre eine gute Idee im Allgemeinen. Andernfalls müssen Sie data.table und alle anderen Pakete installieren, die beim Start geladen werden, da install.packages die .Rprofile-Datei beim Starten ausführt

+0

Das hat den Trick, seit ich R starte und dann install.packages() anstelle der alternativen R CMD INSTALL-Methode starte ich R neu gestartet mit dem --vanilla-Flag und die Installation von data.tables und alle anderen Pakete hat gut funktioniert . Danke für den Zeiger. – slackline

Verwandte Themen