web-dev-qa-db-ja.com

OpenGL GLX拡張機能はサポートされていません

Ubuntu 10.04にOpenGLとfreeglutをインストールしましたが、10.04と10.10では問題なく動作しました。しかし、11.04にアップグレードした後、OpenGLを使用して開発したアプリケーションが正しく実行されません。エラーなしでコンパイルしていますが、実行しようとするとエラーが発生します。

GLUTの場合:

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)

「設定:ドライバ=」を見てください

12
SparrowG

これらのメッセージは単に、グラフィックドライバが正しくインストールされていないことを示しています。 GLXは、X11ウィンドウでOpenGLを機能させるためのX11プロトコルの拡張です。 GLX対応システムには3つの部分があります。

  • GPUと通信するカーネルモジュール(これはLinux-Kernel DRM、またはATI/AMDのfglrxまたはNVidiaのnvidia)。
  • XサーバーGLX拡張モジュール。カーネルモジュールと通信し、OpenGL操作をGPU固有のコマンドに変換します。
  • GLXプロトコルも実装するクライアント側libGL.so。 MesaのDRI2ベースのlibGLと、ATI/AMDまたはNVidiaの独自のlibGL.soがあります。

OpenGLが正しく機能するためには、これらの3つのコンポーネントが適切にインストールおよびロードされ、調和して機能する必要があります。そうでない場合は、OpenGLを使用できません(または、システムに適切にインストールされていないソフトウェアラスタライザのみを使用します)。

9
datenwolf

バンブルビーが必要になるかもしれません。ただし、これは12.04および13.10以降でのみサポートされています。ここの公式の指示: https://wiki.ubuntu.com/Bumblebee

ターミナルを開き、以下のコマンドを入力する必要があります。

12.04.3の場合、linux-headers-genericlinux-headers-generic-lts-raring

Sudo add-apt-repository ppa:bumblebee/stable

UniverseおよびMultiverseリポジトリを有効にします(それぞれbumblebeeおよびnvidiaパッケージ用)。

Sudo apt-get update

デフォルトの独自のnvidiaドライバーを使用してBumblebeeをインストールします。

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

リブート

今はすべて大丈夫です。

6
Qsiris