Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

How may I force an application to use software based opengl rendering on Ubuntu?

share|improve this question

migrated from stackoverflow.com Feb 8 '10 at 2:30

This question came from our site for professional and enthusiast programmers.

    
What (kind of) application are we talking about? – Bobby Sep 24 '10 at 8:13

If you're using Mesa's libGL, you can enable software rendering permanently by running:

sudo apt-get install libgl1-mesa-swx11

This will remove the libgl1-mesa-glx hardware-accelerated Mesa libraries and install the software-only renderer.

Alternately, you can set LIBGL_ALWAYS_SOFTWARE=1, which will only affect programs started with that environment variable, not the entire system.

Both these changes may not work if you're using the binary NVidia drivers, which supply their own libGL.

share|improve this answer
    
Hi, where can I set this variable LIBGL_ALWAYS_SOFTWARE=1? I have the inverse problem, OpenGL is always software rendered and my laptop does not support Unity3D for ubuntu 15.04. I have hybrid Intel-Nvidia graphics. – Santi Sep 9 '15 at 16:06
    
libgl1-mesa-swx11 no longer replaces libgl1-mesa-glx. Thus when installing it you need to configure an override to use it. Still, I recommend using the LLVM-Pipe Software rendering using "LIBGL_ALWAYS_SOFTWARE=1 " It's much faster and takes advantage of newer hardware. Also, users of nvidia and amd drivers can force the use of the mesa software pipeline, if mesa is installed, through using an ld.so hack to override the libGL library that is loaded. – Robert Wm Ruedisueli Nov 5 '15 at 8:51
1  
Does this work on AMD proprietary drivers? Is there an easy option on Nvidia? – Daniel M Gessel Feb 27 at 0:47

If this is about your own application, you can link to the software OpenGL implementation Mesa3D.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.