Can't load X11 in R after OS X Yosemite upgrade

Running into the following error when I try to use ggplot2 and plot within the console after upgrading to Yosemite:

Error in (function (display = "", width, height, pointsize, gamma, bg,  : 
  X11 module cannot be loaded
In addition: Warning message:
In (function (display = "", width, height, pointsize, gamma, bg,  :
  unable to load shared object '/Library/Frameworks/R.framework/Resources/modules//R_X11.so':
  dlopen(/Library/Frameworks/R.framework/Resources/modules//R_X11.so, 6): Library not loaded: /usr/X11/lib/libSM.6.dylib
  Referenced from: /Library/Frameworks/R.framework/Resources/modules//R_X11.so
  Reason: image not found

How can I go about resolving this?


Solution 1:

It looks like the OS update deleted the /usr/X11 and /usr/X11R6 symlinks. Please just re-install XQuartz from http://xquartz.macosforge.org which will setup the symlinks again for you.

Solution 2:

Execute the following in a terminal window:

locate libSM.6.dylib

or do it from an R console:

system("locate libSM.6.dylib")

On my Yosemite install it's in /opt/X11/lib/libSM.6.dylib.

If your setup is similar, then:

sudo ln -s /usr/X11 /opt/X11 

should help fix this temporarily, but I'd keep looking for a Yosemite R package (since that will accommodate all the changes Apple made to the filesystem structure).

Solution 3:

Perhaps won't work for everyone, i'm not even quite sure what the problem was, but I found the same error messages after installing Yosemite and was able to solve the problem simply by reinstalling XQuartz from http://xquartz.macosforge.org

Solution 4:

Had the same problem with R and OS X Yosemite (but with libpng15.15.dylib file). For me the following steps were helpful:

  • install latest XQuartz 2.7.7

  • sudo ln -s /opt/X11/lib/libpng15.15.dylib /usr/local/lib/libpng15.15.dylib