I am running Matlab 2017b on Ubuntu 18.04 LTS and I am having an issue while saving figures as vector graphics (PDF/EPS/SVG); the figures are rasterized in low resolution. I was also getting this warning:
Warning: MATLAB has disabled some advanced graphics rendering features by switching to software OpenGL. For more information, click here.
The help on this topic says that I shold install proprietary drivers and not use open-source substitutes. I do not have a dedicated discrete graphics card and am using the inbuilt Intel HD630 graphics controller.
I tried the following :
- Starting Matlab with -nosoftwareopengl option. It initially gave me this error:
libGL error: unable to load driver: i965_dri.solibGL error: driver pointer missinglibGL error: failed to load driver: i965libGL error: unable to load driver: i965_dri.solibGL error: driver pointer missinglibGL error: failed to load driver: i965libGL error: unable to load driver: swrast_dri.solibGL error: failed to load driver: swrastSegmentation fault (core dumped)
- Renamed libstdc++.so.6 as mentioned in this post but the problem of graphics persited.
- Installed libglu1-mesa-dev freeglut3-dev mesa-common-dev but again no effect.
- Tried opengl hardware on Matlab shell but I got this error: Switching to hardware OpenGL rendering at runtime on unix is not supported.
- I have been using Matlab on linux for a long time but I never had this problem. In fact I have some figures exported from this very installation. So it seems that there is an incompatibility with some Ububtu update. The libstdc++6 vesion on the system is libstdc++.so.6.0.25 while the one that is in the Matlab directory is libstdc++.so.6.0.20
How do I fix this problem?
Best Answer