Расширение OpenGL GLX не поддерживается

я установил OpenGL и freeglut в Ubuntu 10.04, и он отлично работал в 10.04 и 10.10. Но после обновления до 11.04 приложения, которые я разработал с помощью OpenGL, работают неправильно. Они компилируются без ошибок, но когда я пытаюсь их выполнить, я получаю там ошибки:

для перенасыщения:

Xlib:  extension "GLX" missing on display ":0.0".
freeglut (./a.out): OpenGL GLX extension not supported by display ':0.0'

для просто OpenGL:

Xlib:  extension "GLX" missing on display ":0.0".
main: X server has no OpenGL GLX extension

несколько вещей, которые я пробовал:

$glxgears
Xlib:  extension "GLX" missing on display ":0.0".
Error: couldn't get an RGB, Double-buffered visual


$glxinfo
name of display: :0.0
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Error: couldn't find RGB GLX visual or fbconfig

Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".

изменить: Вряд ли это потому, что У меня нет графических драйверов, так как все у меня на борту графики.

Это моя системная графическая информация от sysinfo

$sysinfo
GRAPHIC CARD
      VGA controller
    Intel Corporation Mobile 4 Series Chipset Integrated Graphics Controller (rev 07) (prog-if 00 [VGA controller])
    Subsystem: Toshiba America Info Systems Device ff50

редактирование 2: И, кажется, у меня есть драйвер, установленный для этого.

$lshw -C display
  *-display:0             
       description: VGA compatible controller
       product: Mobile 4 Series Chipset Integrated Graphics Controller
       vendor: Intel Corporation
       physical id: 2
       bus info: pci@0000:00:02.0
       version: 07
       width: 64 bits
       clock: 33MHz
       capabilities: msi pm vga_controller bus_master cap_list rom
       configuration: driver=i915 latency=0
       resources: irq:44 memory:f4000000-f43fffff memory:d0000000-dfffffff ioport:1800(size=8)

посмотрите на " configuration: driver="

2 ответов


эти сообщения просто говорят вам, что ваши графические драйверы установлены неправильно. GLX-это расширение протокола X11 для работы OpenGL в X11 windows. В системе с поддержкой GLX есть 3 части:

  • модуль ядра, говорящий с GPU (это либо DRM ядра Linux, либо fglrx ATI/AMD или nvidia от NVidia).
  • модуль расширения X server GLX, разговор с модулем ядра, преобразование операций OpenGL в GPU команды specifric.
  • клиентская сторона libGL.таким образом, который также реализует протокол GLX. Есть основанный на DRI2 libGL Mesa и проприетарный libGL.так что либо ATI / AMD или NVidia.

для правильной работы OpenGL эти три компонента должны быть правильно установлены и загружены для работы в гармонии. Если это не так, вы не сможете использовать OpenGL (или использовать только программное обеспечение rasterizer, которое неправильно установлено в вашей системе).


Вам может понадобиться Шмель. Но это поддерживается только для 12.04 и 13.10 до. Официальные инструкции здесь: https://wiki.ubuntu.com/Bumblebee

вам нужно открыть терминал и введите команды ниже.

Если на 12.04.3, заменить linux-заголовки-generic С linux-заголовки-generic-lts-raring.

sudo add-apt-repository ppa:bumblebee/stable

включить репозитории Universe и Multiverse (для bumblebee и пакеты nvidia соответственно).

sudo apt-get update

установите Bumblebee с помощью проприетарного драйвера nvidia по умолчанию:

sudo apt-get install bumblebee bumblebee-nvidia linux-headers-generic

перезагрузка

Теперь все должно быть в порядке.