J'ai une machine avec une NVIDIA GeForce que je n'utilise pas à des fins d'affichage (c'est-à-dire que le moniteur n'y est pas connecté), et une puce graphique embarquée terne. (Ci-dessous, vous trouverez la lshw
liste pertinente .)
Mes sessions X fonctionnent très bien; mais lorsque la plupart de mes applications X (qui nécessitent tout type de GFX fantaisie ou une boîte à outils) s'exécutent, elles émettent le message d'erreur suivant:
Xlib: extension "GLX" missing on display ":0".
Ma question est la suivante: comment faire en sorte que mes applications remarquent la bibliothèque non NVIDIA GLX et l'utilisent (sans retirer la carte NVIDIA et sans basculer le moniteur sur ses ports de sortie bien sûr)?
J'utilise Debian / Linux Stretch 64 bits, la version du noyau 4.2.6, avec LXDE.
Sortie de 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)
Sortie de 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".
Sortie de 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"
Information additionnelle:
- Je n'ai pas
glx-alternative-nvidia
installé le package. - Si je démarre à partir d'une clé USB en direct de Devuan ASCII, le problème ne se manifeste pas .
- Si je crée un à l'
xorg.conf
aideXorg :1 -configure
, c'est ce qu'elle produit (sections 2 « Device », un associé au conducteur, une autre avec ); mais si je commente la section Nouveau et essaie d'exécuter Xorg avec cette configuration - elle ne se chargera pas, disant qu'elle ne trouve aucun écran.intel
nouveau
la source
bumblebee
et d'installernvidia-bumblebee
(sur Debian Jessie, en utilisant les paquets gfx de backports).Réponses:
Je suis arrivé ici après l'installation à
nvidia-current
partir du référentiel de packages et je suis resté bloqué sur une boucle de connexion . J'ai regardé la connexion~/.xsession-errors
et trouvé l'erreur mentionnée:Xlib: extension "GLX" missing on display ":0".
J'avais déjà désinstallé
nvidia-current
et le problème persistait. Je n'ai pas non plusglx-alternative-nvidia
installé. En dernier recours, j'ai tout simplement désinstallé toutnvidia
sur mon Ubuntu (y compris les trucs CUDA), et cela a fonctionné après le redémarrage.la source
nvidia-current
installé ni, en fait, aucunnvidia-
paquet. Mais j'ai le dernier CUDA installé, avec le pilote d'accompagnement (l'installateur manuel de nvidia). Je sais que c'est une façon laide de faire les choses, mais j'ai besoin de la dernière version.Identifiez d'abord le module glx utilisé:
Dans Debian 8 Jessie, ma solution était de supprimer le
glx-alternative-nvidia
paquet. Donc, après le redémarrage:la source
apt-get
colis.contrib
référentiel pour le voir. Et probablement vous ne l'avez même pas installé, et donc votre cause d'erreur manquante d'extension glx est différente.cat file | grep pattern
? Pourquoi ne pasgrep pattern file
?Je l'ai résolu en désinstallant glx-alternative-nvidia
la source
glx-alternative-nvidia
installé le paquet ...J'ai eu des problèmes après la mise à niveau de Debian 9 après avoir cliqué sur l'invite de redémarrage pour mettre à niveau.
Lors de l'installation initiale, j'ai suivi les étapes trouvées sur le wiki https://wiki.debian.org/NvidiaGraphicsDrivers
Les plus importants pour moi étaient ...
Puis effectué un redémarrage
la source
Installez OpenGL sur votre ordinateur, puis comme mentionné ici , ajoutez ce qui suit à votre
/etc/X11/xorg.conf
:(Remplacez
nvidia-VERSION
par le nom de votre répertoire) Cela a fonctionné pour moi.la source
/etc/X11/xorg.conf
pour une raison quelconque.sudo nvidia-xconfig
J'ai "l'extension" GLX "manquante" lorsque j'ai "mis à niveau" mon debian (8 -> 9). La solution était assez simple.
Téléchargez votre programme d'installation de pilote sur NVIDIA
Après que l'installateur ait fait son travail, le GLX est revenu.
ps: Si vous repos utilisateur, je pense qu'un dpkg-reconfigure "driver_package_name" ferait de même.
la source