从 Nvidia 更改为 Nouveau 驱动程序 FC24 后无法让 glx 工作

从 Nvidia 更改为 Nouveau 驱动程序 FC24 后无法让 glx 工作

我运行 FC 24(刚刚从 FC 23 升级)。

升级后,X 服务器出现了一些问题,因此我决定从 Nvidia 专有驱动程序更改为 Nouveau。一切看起来都很好,除了我无法让 GLX 工作。为了

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".

好几次了,然后

Error: couldn't find RGB GLX visual or fbconfig

对于 Xorg.0.log 中的错误,特别是

less /var/log/Xorg.0.log |grep EE

我得到:

(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
[    86.925] (EE) Failed to load module "nv" (module does not exist, 0)
[    93.381] (EE) AIGLX error: dlopen of /usr/lib64/dri/nouveau_dri.so failed (/usr/lib64/dri/nouveau_dri.so: undefined symbol: _glapi_check_multithread)
[    93.381] (EE) AIGLX: reverting to software rendering
[    93.389] (EE) AIGLX error: dlopen of /usr/lib64/dri/swrast_dri.so failed (/usr/lib64/dri/swrast_dri.so: undefined symbol: _glapi_check_multithread)
[    93.389] (EE) GLX: could not load software renderer

在Xorg.1.log中,有:

(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
[   246.220] (EE) module ABI major version (6) doesn't match the server's version (9)
[   246.220] (EE) Failed to load module "glx" (module requirement mismatch, 0)
[   246.221] (EE) Failed to load module "nv" (module does not exist, 0)

我确实安装了 mesa-libGL 。

有任何想法吗?

PS:作为一个余兴节目,还有一些地方仍然调用“nv”模块而不是 nouveau。但鉴于不再有 xorg.conf,但它全部分散在 xorg.conf.d 中,我无法弄清楚它在哪里。

答案1

在 Rpmfusion 上进行了研究,发现还需要采取一些步骤来删除 NVIDIA 安装程序留下的垃圾。

https://rpmfusion.org/Howto/nVidia#Recoverfromnvidia_installer

即:

rm -f /usr/lib{,64}/libGL.so.* /usr/lib{,64}/libEGL.so.*
rm -f /usr/lib{,64}/xorg/modules/extensions/libglx.so
dnf reinstall xorg-x11-server-Xorg mesa-libGL mesa-libEGL
mv /etc/X11/xorg.conf /etc/X11/xorg.conf.saved

在我的情况下,最后一行可能不是必需的,但其他行可能是必需的。

似乎现在可以工作(例如glxgears显示旋转齿轮)。

相关内容