gpt4 book ai didi

opengl - Xlib:显示 "GLX"上缺少扩展 ":0"

转载 作者:行者123 更新时间:2023-12-04 18:35:09 25 4
gpt4 key购买 nike

关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。












我们不允许在 Stack Overflow 上提出有关通用计算硬件和软件的问题。您可以编辑问题,使其成为 on-topic对于堆栈溢出。


8年前关闭。







Improve this question




我正在尝试在 Ubuntu 12.04 中使用点云库。但是,当我执行点云可视化程序时,出现以下错误:

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

这些是我的系统信息:

$ glxinfo
name of 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".

$ sudo lshw -C display
*-display
description: VGA compatible controller
product: GF106M [GeForce GT 555M]
vendor: NVIDIA Corporation
physical id: 0
bus info: pci@0000:01: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:16 memory:f2000000-f3ffffff memory:d0000000-dfffffff memory:e0000000-e3ffffff ioport:d000(size=128) memory:f4000000-f407ffff
*-display
description: VGA compatible controller
product: 2nd Generation Core Processor Family Integrated 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:49 memory:f4400000-f47fffff memory:c0000000-cfffffff ioport:e000(size=64)

因为我的笔记本电脑是Nvidia Gt555m显卡和擎天柱,所以我尝试安装Bumblebee。但是当我执行 apt-get install bumblebee ,我的电脑停止并变成黑屏。

我该如何解决这个问题?我真的必须安装 Bumblebee 吗?

最佳答案

有几种方法可以处理 Linux 上的 Optimus 困惑 - 恕我直言,所有这些现在都使用 Bumblebee 取代。 bbswitch (见下文)来自同一作者,是另一个故事。

使用 PRIME 和开源驱动程序 nouveau:

PRIME 总结了 David Airlie 对 XrandR 1.4 所做的更改能够使用开源驱动程序堆栈将内容卸载到专用 GPU。

对于 Precise Pangolin (12.04 LTS),您首先需要确保所谓的 LTS Hardware Enablement Stack已安装。如果您刚刚安装了最新的 LTS 点版本,即 12.04.3,则这些软件包已经是最新版本。

然后你需要做的就是调用一些需要像这样使用 NVIDIA GPU 的程序(如 glxinfo 所示):

DRI_PRIME=1 glxinfo | grep OpenGL

这应该打印
OpenGL vendor string: nouveau
OpenGL renderer string: Gallium 0.4 on XXXX
OpenGL version string: 3.0 Mesa 9.0
OpenGL shading language version string: 1.30

其中 XXXX 是您系统中的实际 GPU。

仅使用 NVIDIA GPU:

这个解决方案并不是 Optimus 的真正意义所在,即将要求苛刻的 3D 任务卸载到专用 GPU,而所有 2D 内容和桌面合成都由英特尔 GPU 处理。使用上述解决方案,您将永久使用 NVIDIA GPU 进行渲染。因此,您渲染的所有内容都通过 NVIDIA GPU,并且仅使用 Intel GPU 传送到屏幕上。

有一个包, nvidia-prime ,它适用于 12.04.3 并且确实做到了 - 据我所知,目前无法对其进行测试。

自驱动程序版本 319.12 起,您可以使用 XRandR 1.4 和专有驱动程序手动配置您的系统。查看最新 README对于 331.13 版,了解如何执行此操作的信息。

打开和关闭 NVIDIA GPU:

要真正受益于流行语 Optimus 所暗示的实际效果,您需要能够在不使用时关闭专用 GPU。为此,Bumblebee 的作者提出了一个名为 bbswitch 的内核模块。 .
bbswitch可用于在不重新启动 X 的情况下打开和关闭 NVIDIA GPU,如果您正在使用 nouveau,这是完美的选择和 PRIME,或者如果您更喜欢第二种解决方案,则使用 X 重新启动,即您可以编写一个脚本来根据您当前的需要在 Intel 和 NVIDIA GPU 之间来回切换。对于后者,请参阅此页面底部的说明(恐怕是德语,但您应该能够看到该怎么做)。

显然,第一个更可取,因为它有点类似于 Optimus,但正如我们所见,第二个解决方案并不是真正的按需卸载,因此您不需要在 X11 session 期间切换 GPU,而是在 session 之间。这就是切换脚本的用武之地。因此,对于浏览、办公室工作和其他事情,您可以在 NVIDIA GPU 离线时使用 Intel GPU,如果您想做一些 OpenGL 的事情,例如游戏或您自己的图形开发,您可以切换到 NVIDIA GPU。

在能耗方面,第二种解决方案并没有那么有害,因为专有驱动程序已经做了很好的电源管理——在过去,开源驱动程序在这个领域出了名的糟糕,因为 NVIDIA 不会发布需要硬件文档来实际实现适当的电源管理,而无需逆向工程工作和社区的帮助。这越来越好 now .

我希望这已经足够了。如果您需要进一步的帮助,请发表评论。

关于opengl - Xlib:显示 "GLX"上缺少扩展 ":0",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20114918/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com