libGL 错误:在 Ubuntu 20.04 中无法加载驱动程序 iris 和 swrast

Tam*_*eat 12 gnome opengl drivers 20.04

我在启动第三方科学软件(例如 coot、pymol 或 chimera)时遇到一些问题(请参阅下面的消息)。

我使用 coot 二进制文件(0.9.5)。Chimera 是 1.14 build 42018。Ubuntu 20.04.2 LTS Gnome。我使用来自 Github 的 pymol-open-source

Graphic card: VGA compatible controller: Intel Corporation UHD Graphics 620 (Whiskey Lake)
Model: Intel(R) Core(TM) i7-8565U CPU @ 1.80GHz
Run Code Online (Sandbox Code Playgroud)

看来iris和swrast有一些问题(请参考下面的消息)。

我总是收到这样的关于嵌合体的消息:

libGL error: MESA-LOADER: failed to open iris: /usr/lib/dri/iris_dri.so: cannot open shared object file: No such file or directory (search paths /usr/lib/x86_64-linux-gnu/dri:\$${ORIGIN}/dri:/usr/lib/dri)
libGL error: failed to load driver: iris
libGL error: MESA-LOADER: failed to open iris: /usr/lib/dri/iris_dri.so: cannot open shared object file: No such file or directory (search paths /usr/lib/x86_64-linux-gnu/dri:\$${ORIGIN}/dri:/usr/lib/dri)
libGL error: failed to load driver: iris
libGL error: MESA-LOADER: failed to open swrast: /usr/lib/dri/swrast_dri.so: cannot open shared object file: No such file or directory (search paths /usr/lib/x86_64-linux-gnu/dri:\$${ORIGIN}/dri:/usr/lib/dri)
libGL error: failed to load driver: swrast
X Error of failed request:  BadValue (integer parameter out of range for operation)
  Major opcode of failed request:  152 (GLX)
  Minor opcode of failed request:  3 (X_GLXCreateContext)
  Value in failed request:  0x0
  Serial number of failed request:  890
  Current serial number in output stream:  891
Run Code Online (Sandbox Code Playgroud)

我收到了 pymol 的消息:

Qt not available, using GLUT/Tk interface
libGL error: MESA-LOADER: failed to open iris: /usr/lib/dri/iris_dri.so: cannot open shared object file: No such file or directory (search paths /usr/lib/x86_64-linux-gnu/dri:\$${ORIGIN}/dri:/usr/lib/dri)
libGL error: failed to load driver: iris
libGL error: MESA-LOADER: failed to open iris: /usr/lib/dri/iris_dri.so: cannot open shared object file: No such file or directory (search paths /usr/lib/x86_64-linux-gnu/dri:\$${ORIGIN}/dri:/usr/lib/dri)
libGL error: failed to load driver: iris
libGL error: MESA-LOADER: failed to open swrast: /usr/lib/dri/swrast_dri.so: cannot open shared object file: No such file or directory (search paths /usr/lib/x86_64-linux-gnu/dri:\$${ORIGIN}/dri:/usr/lib/dri)
libGL error: failed to load driver: swrast
freeglut Unable to create OpenGL 1.0 context (flags 0, profile 0)
X Error of failed request:  BadValue (integer parameter out of range for operation)
  Major opcode of failed request:  152 (GLX)
  Minor opcode of failed request:  24 (X_GLXCreateNewContext)
  Value in failed request:  0x0
  Serial number of failed request:  50
  Current serial number in output stream:  51
 PyMOL: abrupt program termination.
Run Code Online (Sandbox Code Playgroud)

谢谢您的帮助。


lsmod | grep 
drm rm_kms_helper 184320 1 i915 
syscopyarea 16384 1 drm_kms_helper
sysfillrect 16384 1 drm_kms_helper 
sysimgblt 16384 1 drm_kms_helper 
fb_sys_fops 16384 1 drm_kms_helper 
drm 491520 9 drm_kms_helper,i915
Run Code Online (Sandbox Code Playgroud)
$ glxinfo | grep Vendor
Vendor: Intel Open Source Technology Center (0x8086)
Run Code Online (Sandbox Code Playgroud)
$ lshw -C video 
WARNING: you should run this program as super-user. 
*-display 
description: VGA compatible controller 
product: UHD Graphics 620 (Whiskey Lake) 
vendor: Intel Corporation 
physical id: 2 
bus info: pci@0000:00:02.0 
version: 00 
width: 64 bits 
clock: 33MHz 
capabilities: vga_controller bus_master cap_list rom 
configuration: driver=i915 latency=0 
resources: irq:150 memory:9b000000-9bffffff memory:50000000-5fffffff ioport:3000(size=64) 
memory:c0000-dffff
Run Code Online (Sandbox Code Playgroud)
$ vainfo 
libva info: VA-API version 1.7.0 
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/iHD_drv_video.so 
libva info: Found init function __vaDriverInit_1_7 
libva info: va_openDriver() returns 0 
vainfo: VA-API version: 1.7 (libva 2.6.0) 
vainfo: Driver version: Intel iHD driver for Intel(R) Gen Graphics - 20.1.1 () 
vainfo: Supported profile and entrypoints
VAProfileMPEG2Simple : VAEntrypointVLD 
VAProfileMPEG2Main : VAEntrypointVLD 
VAProfileH264Main : VAEntrypointVLD 
VAProfileH264Main : VAEntrypointEncSliceLP 
VAProfileH264High : VAEntrypointVLD 
VAProfileH264High : VAEntrypointEncSliceLP 
VAProfileJPEGBaseline : VAEntrypointVLD 
VAProfileJPEGBaseline : VAEntrypointEncPicture
VAProfileH264ConstrainedBaseline: VAEntrypointVLD
VAProfileH264ConstrainedBaseline: VAEntrypointEncSliceLP
VAProfileVP8Version0_3 : VAEntrypointVLD 
VAProfileHEVCMain : VAEntrypointVLD 
VAProfileHEVCMain10 : VAEntrypointVLD 
VAProfileVP9Profile0 : VAEntrypointVLD 
VAProfileVP9Profile2 : VAEntrypointVLD
Run Code Online (Sandbox Code Playgroud)

Ale*_*nov 11

我刚刚在 Linux Mint 上使用 Kiwix 时遇到了同样的问题,并发现了你的问题。我能够解决我的问题阅读:https://github.com/kiwix/kiwix-desktop/issues/393。我理解的问题是,在 Ubuntu 上配置的 iris 驱动程序默认在笔记本电脑上使用,而在我的情况下,我的旧笔记本电脑显卡支持旧驱动程序。因此,解决方案/解决方法是在命令提示符下运行应用程序之前设置环境变量,如下所示:

MESA_LOADER_DRIVER_OVERRIDE=i965 ./kiwix-deskop
Run Code Online (Sandbox Code Playgroud)

希望对你也有帮助。

PS,如果您想尝试永久设置此变量并且没有其他任何问题,请参阅: 如何永久设置环境变量


N0r*_*ert 4

在包级别,这可以通过安装单个 来修复:

sudo apt-get install libgl1-mesa-dri
Run Code Online (Sandbox Code Playgroud)

然后关于包:

  • 我想知道它与显卡有关,因为我设法在 bash 中使用“export MESA_LOADER_DRIVER_OVERRIDE=i965”运行所有这些软件。 (2认同)