我在一个大型EC2 Ubuntu实例上运行R2.9,该实例加载了RAM,但没有终端。加载具有显示依赖项的库(如sqldf包)时,收到以下错误:
库(sqldf)
...
加载所需包:tcltk
正在加载Tcl/Tk接口。。。fun(…)中出错:无法连接到显示“localhost:11.0”
错误:。在“tcltk”的“loadNamespace”中onLoad失败
错误:无法加载包“tcltk”
这似乎是一个普遍的问题,我想知道其他人是如何解决的。安装X11服务器不是理想的解决方案
使用虚拟帧缓冲区X11服务器——我们在无头chroots中构建需要X11 for R构建的包时也会这样做。例如,构建的PAR取决于rggobi:
xvfb xauth xfonts基地
安装完这些后,可以使用xvfb run命令。如果您通过例如启动R
xvfb run R--不保存
现在,您应该能够使用需要X11作为绘图设备的例程和命令,或者也坚持使用X11的tcl/tk初始化
同样的技巧也适用于web服务器