Xlib: 누락된 확장 'GLX' - NVIDIA 카드 및 온보드 그래픽 포함

Xlib: 누락된 확장 'GLX' - NVIDIA 카드 및 온보드 그래픽 포함

NVIDIA GeForce가 설치된 컴퓨터가 있습니다.아니요디스플레이 목적(즉, 모니터가 연결되지 않음) 및 일부 부족한 온보드 그래픽 칩. (아래에서 관련 목록을 찾을 수 있습니다 lshw.)

내 X 세션은 정상적으로 실행되지만 대부분의 X 응용 프로그램(멋진 GFX 또는 툴킷 필요)이 실행되면 다음과 같은 오류 메시지가 표시됩니다.

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

내 질문은: 내 응용 프로그램이 NVIDIA가 아닌 GLX 라이브러리를 인식하고 이를 사용하도록 하려면 어떻게 해야 합니까(NVIDIA 카드를 제거하지 않고 물론 모니터를 출력 포트로 전환하지 않고)?

저는 Debian/Linux Stretch 64비트, 커널 버전 4.2.6 및 LXDE를 사용하고 있습니다.

출력 lshw -c display:

  *-display               
       description: VGA compatible controller
       product: GK106 [GeForce GTX 650 Ti Boost]
       vendor: NVIDIA Corporation
       physical id: 0
       bus info: pci@0000:02:00.0
       version: a1
       width: 64 bits
       clock: 33MHz
       capabilities: pm msi pciexpress vga_controller bus_master cap_list rom
       configuration: driver=nvidia latency=0
       resources: irq:17 memory:f6000000-f6ffffff memory:e0000000-e7ffffff memory:e8000000-e9ffffff ioport:e000(size=128) memory:f7000000-f707ffff
  *-display
       description: VGA compatible controller
       product: Xeon E3-1200 v2/3rd Gen Core processor Graphics Controller
       vendor: Intel Corporation
       physical id: 2
       bus info: pci@0000:00:02.0
       version: 09
       width: 64 bits
       clock: 33MHz
       capabilities: msi pm vga_controller bus_master cap_list rom
       configuration: driver=i915 latency=0
       resources: irq:30 memory:f7400000-f77fffff memory:d0000000-dfffffff ioport:f000(size=64)

출력 glxinfo:

Xlib:  extension "GLX" missing on display ":0".
Xlib:  extension "GLX" missing on display ":0".
Xlib:  extension "GLX" missing on display ":0".
Xlib:  extension "GLX" missing on display ":0".
Xlib:  extension "GLX" missing on display ":0".
Xlib:  extension "GLX" missing on display ":0".
Xlib:  extension "GLX" missing on display ":0".
Error: couldn't find RGB GLX visual or fbconfig
Xlib:  extension "GLX" missing on display ":0".
Xlib:  extension "GLX" missing on display ":0".
Xlib:  extension "GLX" missing on display ":0".
Xlib:  extension "GLX" missing on display ":0".
Xlib:  extension "GLX" missing on display ":0".
Xlib:  extension "GLX" missing on display ":0".
Xlib:  extension "GLX" missing on display ":0".
Xlib:  extension "GLX" missing on display ":0".
Xlib:  extension "GLX" missing on display ":0".
Xlib:  extension "GLX" missing on display ":0".

출력 cat /var/log/Xorg.0.log | grep glx:

[    19.287] (II) LoadModule: "glx"
[    19.787] (II) Loading /usr/lib/xorg/modules/extensions/libglx.so
[    22.727] (II) Module glx: vendor="X.Org Foundation"

추가 정보:

  • 해당 패키지가 설치되어 있지 않습니다 glx-alternative-nvidia.
  • Devuan ASCII 라이브 이미지 USB에서 부팅하면 문제가 발생합니다.아니요나타나다.
  • xorg.confusing 을 생성하면 Xorg :1 -configure,이것그것이 생성하는 것입니다(하나는 intel드라이버와 관련되고 다른 하나는 2개의 "장치" 섹션 nouveau). 그러나 nouveau 부분을 주석 처리하고 해당 구성으로 Xorg를 실행하려고 하면 로드되지 않습니다.설명하다어떤 화면도 찾을 수 없습니다.

답변1

nvidia-current패키지 저장소에서 설치한 후 여기에 도착하여로그인 루프에 갇혔습니다.. 로그인을 확인해 ~/.xsession-errors보니 위와 같은 오류가 발견되었습니다.

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

제거했는데 nvidia-current문제가 여전히 존재합니다. 내 것도 설치되지 않았습니다 glx-alternative-nvidia. 최후의 수단으로 nvidiaUbuntu의 모든 항목(CUDA 포함)을 제거하고 재부팅한 후 작동했습니다.

답변2

먼저 어떤 glx 모듈이 사용되고 있는지 확인하십시오:

$ cat /var/log/Xorg.0.log | grep glx
[     3.622] (II) LoadModule: "glx"
[     3.624] (II) Loading /usr/lib/xorg/modules/extensions/libglx.so
[     3.705] (II) Module glx: vendor="NVIDIA Corporation"

Debian 8 Jessie에서 내 해결책은 glx-alternative-nvidiapackage.json을 삭제하는 것이었습니다. 따라서 다시 시작한 후:

$ cat /var/log/Xorg.0.log | grep glx
[     3.581] (II) LoadModule: "glx"
[     3.582] (II) Loading /usr/lib/xorg/modules/extensions/libglx.so
[     3.592] (II) Module glx: vendor="X.Org Foundation"

$ glxinfo | grep "OpenGL renderer"
OpenGL renderer string: Mesa DRI Intel(R) Haswell Desktop

답변3

glx-alternative-nvidia를 제거하여 문제를 해결했습니다.

apt-get remove glx-alternative-nvidia

답변4

OpenGL 설치컴퓨터에서 그리고 다음과 같이여기서 언급한, 다음을 에 추가하세요 /etc/X11/xorg.conf.

Section "Files"
    ModulePath "/usr/lib/nvidia-VERSION/xorg"
    ModulePath "/usr/lib/xorg/modules"
EndSection

( nvidia-VERSION디렉토리 이름으로 바꾸십시오) 이것은 저에게 효과적이었습니다.

관련 정보