R "capabilities" on a cluster node
The double '//' is harmless. What you are failing at is that your R-build-host has the system X11 runtime libraries (libSM.so.6 and friends) while your execution hosts don't have them, and R_X11.so depends on the system X11 libraries which R cannot find on the execution hosts. So - ask your grid engine administrator to install the X11 runtime libraries on the grid nodes, or ask him/her to build a special version of R which doesn't depend on X11. (the former is the recommended approach, but your admins may think the latter suit their policies). Yes, pdf/ps are always available. (they are just save-to-file devices using R's own pdf/ps writing code). The png/jpeg situation are similar to but separate from X11. On the R build host, you need both the development headers (libpng-devel, libjpeg-devel, libX11-devel & other libX*-devel packages for redhat systems) as well as the runtime libraries (libpng, libjpeg, libX*) to build R with each of the support for these 3. On the execution hosts, you need just the runtime libraries. The reason why you are missing jpeg/png is probably because your build host doesn't have the headers. (it is relatively rare not to have jpeg/png runtime, but the headers are normally not installed). We (used to?) have a similiar situation on our sun grid - my desktop R can do png but our cluster grid R cannot. (ghostscript and a few other software can convert ps/pdf to png so it is not a big loss, just a minor inconvenience).
Earl F. Glynn wrote:
R version 2.5.1 (2007-06-27) I' running some simple R jobs via the Sun Grid Engine on our Linux cluster in preparation for some bigger ones. I checked R's capabilities on the cluster nodes (after failing to create a png file) and am getting the following warning message: [Run on a cluster node using qrsh:]
capabilities()
jpeg png tcltk X11 http/ftp sockets libxml fifo
FALSE FALSE FALSE FALSE TRUE TRUE TRUE TRUE
cledit iconv NLS profmem
TRUE TRUE TRUE FALSE
Warning message:
unable to load shared library
'/n/site/inst/Linux-i686/bioinfo/R/2.5.1/lib/R/modules//R_X11.so':
libSM.so.6: cannot open shared object file: No such file or directory in:
capabilities()
Is the double slash (//) in the path above a bug in how we've configured R
here (the /n/site/inst/ directory is shared but is platform specific), or a
bug in how the capabilities command works? The file does exist if the
double slash in the path had not caused the warning above.
How can one programmatically get the info from ?Devices, which appears to be
dynamic based on one's system? Is it safe to assume that pdf's or
postscript files are always available in R since they're not listed in
capabilities and seem to be shown everywhere under ?Devices ?
Part of the ?Devices output on a cluster node says this:
The following devices will be available if R was compiled to use
them:
* 'X11' The graphics driver for the X11 Window system
* 'png' PNG bitmap device
* 'jpeg' JPEG bitmap device
We can just recompile to get png or jpeg support? Are X11 libraries used on
cluster nodes while running "headless"? Can I create pngs or jpegs without
X11?
Thanks for any advice about this.
efg
Earl F. Glynn
Scientific Programmer
Stowers Institute for Medical Research
______________________________________________ R-devel at r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel