This question already has an answer here:

I've already tried Error: couldn't find RGB GLX visual or fbconfig ubuntu 12.04 and a few others, but they haven't helped me.

TL;DR I'm running Ubuntu 16.04 but have installed lubuntu-desktop in order for the display to work with NVidia Drivers installed. OpenGL GLX is not working

Longer version:

I'm on a Dell Inspiron laptop with a NVidia GTX 960M discrete GPU and an Intel HD integrated one, running Ubuntu 16.04.1. After trying a few different drivers that led to a blackscreen or a login loop and still not getting anything when trying cuda samples, I installed the 370.28 driver.

That lead to a black screen again which I solved by adding nomodeset to GRUB_CMDLINE_LINUX_DEFAULT in my /etc/default/grub.

Next I got to a login loop which I couldn't solve by using the default Unity or using GNOME, so I installed lubuntu-desktop which is using LXDE as a display manager. I can successfully login

The problem:

I can't run stuff that's using OpenGL GLX. When running a program that needs the GLX extension, I'm getting freeglut (./application): OpenGL GLX extension not supported by display ':0' The output of glxinfo is

name of display: :0
Error: couldn't find RGB GLX visual or fbconfig

Other potentially useful info:

Output of nvidia-smi

Mon Dec 26 17:38:51 2016       
| NVIDIA-SMI 370.28                 Driver Version: 370.28                    |
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|   0  GeForce GTX 960M    Off  | 0000:01:00.0     Off |                  N/A |
| N/A   53C    P0    N/A /  N/A |      0MiB /  4043MiB |      0%      Default |

| Processes:                                                       GPU Memory |
|  GPU       PID  Type  Process name                               Usage      |
|  No running processes found                                                 |

Output of lshw -c display

       description: 3D controller
       product: GM107M [GeForce GTX 960M]
       vendor: NVIDIA Corporation
       physical id: 0
       bus info: pci@0000:01:00.0
       version: a2
       width: 64 bits
       clock: 33MHz
       capabilities: pm msi pciexpress bus_master cap_list rom
       configuration: driver=nvidia latency=0
       resources: irq:16 memory:e2000000-e2ffffff memory:d0000000-dfffffff memory:e0000000-e1ffffff ioport:e000(size=128) memory:e3000000-e307ffff
  *-display UNCLAIMED
       description: VGA compatible controller
       product: Intel Corporation
       vendor: Intel Corporation
       physical id: 2
       bus info: pci@0000:00:02.0
       version: 06
       width: 64 bits
       clock: 33MHz
       capabilities: pciexpress msi pm vga_controller bus_master cap_list
       configuration: latency=0
       resources: memory:e4000000-e4ffffff memory:c0000000-cfffffff ioport:f000(size=64)


# nvidia-xconfig: X configuration file generated by nvidia-xconfig
# nvidia-xconfig:  version 370.28  (buildmeister@swio-display-x64-rhel04-17)  Thu Sep  1 20:22:52 PDT 2016

Section "ServerLayout"
    Identifier     "Layout0"
    Screen      0  "Screen0" 0 0
    InputDevice    "Keyboard0" "CoreKeyboard"
    InputDevice    "Mouse0" "CorePointer"

Section "Files"

Section "InputDevice"

    # generated from default
    Identifier     "Mouse0"
    Driver         "mouse"
    Option         "Protocol" "auto"
    Option         "Device" "/dev/psaux"
    Option         "Emulate3Buttons" "no"
    Option         "ZAxisMapping" "4 5"

Section "InputDevice"

    # generated from default
    Identifier     "Keyboard0"
    Driver         "kbd"

Section "Monitor"
    Identifier     "Monitor0"
    VendorName     "Unknown"
    ModelName      "Unknown"
    HorizSync       28.0 - 33.0
    VertRefresh     43.0 - 72.0
    Option         "DPMS"

Section "Device"
    Identifier     "Device0"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"

Section "Screen"
    Identifier     "Screen0"
    Device         "Device0"
    Monitor        "Monitor0"
    DefaultDepth    24
    SubSection     "Display"
        Depth       24

ldd /usr/bin/glxinfo

linux-vdso.so.1 =>  (0x00007ffc941e3000)
libGL.so.1 => /usr/lib/nvidia-370/libGL.so.1 (0x00007f7289a49000)
libX11.so.6 => /usr/lib/x86_64-linux-gnu/libX11.so.6 (0x00007f728970f000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f7289345000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f7289141000)
libGLX.so.0 => /usr/lib/nvidia-370/libGLX.so.0 (0x00007f7288f11000)
libGLdispatch.so.0 => /usr/lib/nvidia-370/libGLdispatch.so.0 (0x00007f7288c27000)
libxcb.so.1 => /usr/lib/x86_64-linux-gnu/libxcb.so.1 (0x00007f7288a05000)
/lib64/ld-linux-x86-64.so.2 (0x000055d88596d000)
libXext.so.6 => /usr/lib/x86_64-linux-gnu/libXext.so.6 (0x00007f72887f3000)
libXau.so.6 => /usr/lib/x86_64-linux-gnu/libXau.so.6 (0x00007f72885ee000)
libXdmcp.so.6 => /usr/lib/x86_64-linux-gnu/libXdmcp.so.6 (0x00007f72883e8000)

/var/log/Xorg.0.log: http://pastebin.com/fHMXk3gZ

libgl1-mesa-glx and mesa-utils are installed.

marked as duplicate by kenorb, Eric Carvalho, Zanna, Thomas, Uri Herrera Sep 9 '18 at 23:46

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.


It looks like you've messed up the kernel and X11 drivers so you have a combination that is incompatible -- you're forcing the nVidia driver by using an xorg.conf and your kernel probably has the nouveau driver modules loaded.

(1) Try removing (or just renaming) the xorg.conf file and let x.org autoconfigure itself.

(2) Try removing the nouveau packages from the system. If you're using the Ubuntu-supported nVidia driver package, try reinstalling that too. If you're going the unsupported route and installing the upstream nVidia drivers, well, cross your fingers and hope for the best.

You may find you need to remove all your Compiz confiurations to get Unity to run after this, since Compiz tends to permanently disable OpenGL support after one single transient error.

Not the answer you're looking for? Browse other questions tagged or ask your own question.