Wie zum ausführen von R auf einem server ohne X11, und vermeiden Abhängigkeiten gebrochen
Ich bin mit R 2.9 auf einer großen EC2 Ubuntu-Instanz, beladen mit RAM, aber ohne ein terminal. Wenn ich eine Bibliothek laden, die hat Abhängigkeiten anzeigen, wie die sqldf-Paket, erhalte ich die folgende Fehlermeldung:
library(sqldf)
...
Loading required package: tcltk
Loading Tcl/Tk interface ... Error in fun(...) : couldn't connect to display "localhost:11.0"
Error : .onLoad failed in 'loadNamespace' for 'tcltk'
Error: package 'tcltk' could not be loaded
Dies scheint ein Allgemeines problem zu sein, und ich Frage mich, wie andere es gelöst. Die Installation eines X11-Servers ist keine wünschenswerte Lösung.
InformationsquelleAutor medriscoll | 2009-11-10
Du musst angemeldet sein, um einen Kommentar abzugeben.
Verwenden der virtuellen framebuffer, X11-server-wir tun das gleiche Pakete bauen zu können, erfordert X11 für R baut im headless chroots. Die Einnahme von z.B. pars die Build-Depends von
rggobi
:Nach der Installation können Sie die
xvfb-run
Befehl. Wenn Sie beginnen, R z.B. übersollten Sie jetzt verwenden können, Routinen und Befehle erfordern X11, wie z.B. einige der Plot-Geräte, oder die tcl/tk-Initialisierung, die auch darauf besteht X11.
Den gleichen trick ist nützlich für web-Server.
InformationsquelleAutor Dirk Eddelbuettel
Dirk ' s Vorschlag in der Tat gut funktioniert, wenn Sie die Kontrolle über den server & laufen kann xvfb.
Wenn nicht, Lesen Sie weiter...
in neueren Versionen von R (>= 2.10 & vielleicht aber auch früher), ist dies nicht mehr ein Fehler, es ist eine Warnung:
Nun können Sie diese Warnung unterdrücken, und die anschließende Paket laden Nachricht über:
Oft sehen Sie diese Meldung durch das laden eines Pakets, wie
qvalue
abhängigtcltk
; wenn Sie nach silent Betrieb nehmen, sollten Sie schweigend laden tcltk zuerst, dann das Paket von Interesse:Mark
auferstanden durch: http://dev.list.galaxyproject.org/wrapping-qvalue-in-Galaxy-td4655164.html
InformationsquelleAutor drmjc