Skip to content
ArchangeGabriel edited this page Jan 17, 2012 · 36 revisions

Common issues and their solution can be found here.

Are you really using an nVidia Optimus card?

Only laptops have these kind of nVidia Optimus card, so this project won't apply to desktops (for now). Cards from the 4xxM and newer series are all Optimus-enabled. The M stands for "Mobile". But having a 4xxM card isn't enough to be sure that you're having an Optimus laptop. There must also be an integrated video controller in your processor. To check that, run this command in a terminal:

lspci lspci -vnn | grep '\''[030[02]\]'

If it outputs two lines, then you're likely having an Optimus laptop. Else, it's probably not one, ask on the [hybrid graphics mailing list][hgml] for more informations, providing the above command output.

Have you installed a recent nvidia driver?

Version 260.19.12 was the first to support Optimus enabled card (but does not support Optimus technology itself). Ensure that you've a recent driver installed. If you're using Ubuntu, install the ubuntu-x-swat/x-updates PPA and upgrade nvidia-current:

sudo apt-add-repository ppa:ubuntu-x-swat/x-updates  
sudo apt-get upgrade

Also make sure that you don't have drivers installed for older cards. On Ubuntu, these are the packages nvidia-96, nvidia-173 and nvidia-180.

If you have installed from MrMEEE repository

If you have installed Bumblebee or Ironhide from MrMEEE (or the mj-casalogic) repository you are screwed and a reinstallation may be the best option especially if you are using Ubuntu.

If you are using Ubuntu and installed a PPA version of Bumblebee or Ironhide from mj-casalogic, you can try to uninstall it with:

sudo ppa-purge ppa:mj-casalogic/bumblebee
sudo ppa-purge ppa:mj-casalogic/ironhide

Note that you need to have ppa-purge installed which can be installed with sudo apt-get install ppa-purge. Reboot the machine for the crap get off your machine.

Error: couldn't get an RGB, Double-buffered visual

If you've upgraded to Ubuntu Oneiric and:

  • get the above message when running programs from the terminal
  • have broken graphics effects
  • run with fallback graphics

then you've likely added the ubuntu-x-swat/x-updates PPA before which was removed during the upgrade. Simply enable this PPA again and upgrade your nvidia-current driver:

sudo apt-add-repository ppa:ubuntu-x-swat/x-updates
sudo apt-get upgrade

After upgrading, restart the X server (or just reboot the machine).

Desktop effects do not work anymore

If you've generated /etc/X11/xorg.conf using nvidia-xconfig, remove that file. It's not compatible with Optimus laptops:

sudo rm /etc/X11/xorg.conf

See also If you've installed from MrMEEE repository and Error: couldn't get an RGB, Double-buffered visual.

3D effects don't work and when running 3D apps in a term you get Xlib: extension "GLX" missing on display ":0"

You've probably messed up GLX library in Xorg. To recover it, try to do the following things : sudo apt-get install --reinstall xserver-xorg-video-intel libgl1-mesa-glx libgl1-mesa-dri xserver-xorg-core sudo dpkg-reconfigure xserver-xorg sudo update-alternatives --remove gl_conf /usr/lib/nvidia-current/ld.so.conf

Then reboot and your should be OK.

optirun does not work

optirun is quite helpful in debugging, i.e. when you need to re-login after installation or if you forgot to add yourself to the bumblebee group. There are many reasons why optirun would fail to run. To start debugging, look in /var/log/sys.log and /var/log/Xorg.8.log (replace 8 by the VirtualDisplay setting in /etc/bumblebee/bumblebee.conf). New log messages are appended to the end, so make sure you look at the end of your log file for recent messages.

bumblebee.log: FATAL: Error inserting nvidia_current (...): No such device

If you've previously had installed ironhide or bumblebee from MrMEEE (or mj-casalogic), you've likely messed up your card. It can still be recovered however. Run lspci -d 10de: -vvnn and look for blocks starting containing "VGA compatible controller" or "3D controller". If you cannot find any, your card is turned off completely. !!! Unknown header type 7f indicates that the card is off too as shown below.

02:00.0 3D controller [0302]: nVidia Corporation Device [10de:0a7a] (rev ff) (prog-if ff)
        !!! Unknown header type 7f

In both cases, you can try to run the scripts for enabling your card. If you don't know how to, join our IRC channel on Freenode at #bumblebee (webchat).

sys.log: The Bumblebee X server failed to start. Please check /var/log/Xorg.8.log

Check your /var/log/Xorg.8.log for possible errors. Use grep -Fn '(EE' /var/log/Xorg.8.log for finding errors quickly, prefixed with the line number. Known errors messages and their description are listed below.

(EE) Failed to load module "kbd" (module does not exist, 0) (<=2.4.1)

This is a harmless message.

(EE) NVIDIA(0): No display devices found for this X screen. (<=2.4.1)

If you scroll a bit above that error and see something like:

(WW) NVIDIA(GPU-0): Invalid ConnectedMonitor request; request was for 'DFP', but
(WW) NVIDIA(GPU-0):     the valid display devices are 'CRT-0'.

Then edit /etc/bumblebee/xorg.conf.nvidia and replace DFP by CRT-0 in the line with ConnectedMonitor:

    Option "ConnectedMonitor" "DFP"

Restart Bumblebee using sudo restart bumblebeed.

Failed to initialize the NVIDIA GPU at PCI:1:0:0. Please ...

PCI:1:0:0 may vary, but take a look at the last lines of the kernel log (usually located at /var/log/kern.log, /var/log/kernel or /var/log/messages). You're probably using an outdated driver or messed a bit with improper ACPI calls (see above).

ERROR: ld.so: object 'libdlfaker.so' from LD_PRELOAD cannot be preloaded: ignored.

If you run Wine (or a 32-bit application) on Ubuntu Oneiric or later and get this error, you need to install the 32-bit libraries for VirtualGL:

sudo apt-get install virtualgl-libs:i386

Other reasons why you get this reason:

  • The program you're trying to run is a statically linked program. There is no workaround for this
  • The program you're trying to run has a setuid/setgid bit set which makes the program run under the owner of the file. For security reasons, virtualgl cannot hook into it. There is a workaround with chmod u+s, but it's very unsafe and not recommended.
  • The environment variable LD_LIBRARY_PATH is cleared. See the previous workaround for ways to solve it.

If you cannot solve your issue, continue at Reporting Issues.

Clone this wiki locally