让 OpenGL GLX 与 Debian jessie 上的 Steam 客户端配合使用

让 OpenGL GLX 与 Debian jessie 上的 Steam 客户端配合使用

我正在尝试安装蒸汽客户端在 Debian 8 (Jessie) 64 位上,因为说明要求我这样做(并且因为我在没有它们的情况下尝试过,但失败了......继续阅读!)。按照说明,我基本上完成了以下操作:

deb http://http.debian.net/debian/ jessie main contrib non-free
dpkg --add-architecture i386
aptitude update
aptitude install steam
aptitude install libgl1-fglrx-glx:i386

最后一个是试图为我的 ATI Radeon HD 7800 安装 32 位驱动程序。之所以需要这些驱动程序,是因为 steam 显然是 32 位的,并且需要 32 位驱动程序。我运行该命令时的输出是:

user@home:~$ sudo apt-get install libgl1-fglrx-glx:i386
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Package libgl1-fglrx-glx:i386 is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
E: Package 'libgl1-fglrx-glx:i386' has no installation candidate

当我现在运行 steam 时,我收到以下消息:

OpenGL GLX 上下文不使用直接渲染,这可能会导致性能问题。

欲了解更多信息,请访问 https://support.steampowered.com/kb_article.php?ref=9938-EYZB-7457

该链接将我带到一个页面,基本上要求我安装 32 位驱动程序。

user@home:~$ glxinfo | grep rendering
direct rendering: Yes

嗯,我想这很好。但是,例如,当我尝试运行时,Counterstrike: Source我得到以下信息:

找不到所需的 OpenGL 入口点“glGetError”!您的显卡不受支持,或者您的 OpenGL 驱动程序需要更新。

我猜这是因为我没有安装该驱动程序?

为了确认我有正确的来源,这是我的/etc/apt/sources.list文件:

user@home:~$ cat /etc/apt/sources.list                                
deb http://http.us.debian.org/debian/ jessie contrib main
deb http://http.debian.net/debian/ jessie main contrib non-free
deb-src http://http.debian.net/debian/ jessie main contrib non-free
deb http://repository.spotify.com stable non-free
deb-src http://repository.spotify.com stable non-free

不幸的是,以下(非常相似)问题的建议解决方案已包含在我的步骤中,但对我的情况没有帮助:

Debian Stable libgl1-nvidia-glx:i386 未找到(尝试安装 Steam)

我假设那些指示之所以存在是因为它们有效,而且他们明确表示它们是为了debian jessie.我在这里做错了什么?

编辑:正如 Braiam 指出的那样,这个问题可能更多地与蒸汽问题这是我的设置。我尝试通过执行以下操作来遵循建议的修复方法之一:

mv ~/.steam/ubuntu12_32/steam-runtime/i386/lib/i386-linux-gnu/libgcc_s.so.1{,.disable}

然而,与其他人的报告不同,这似乎对我没有多大帮助(结果与以前相同)。

答案1

  1. 不一定Direct rendering : Yes意味着您有 Steam 所需的 OpenGL 支持。这仅意味着您当前的 glx 驱动程序可以直接与硬件通信。在其他情况下,所有请求都被推入队列并从该队列执行,这称为“间接”。更重要的是,OpenGL 可以通过网络工作。在这种情况下,渲染将是间接的,但仍会加速。您的显卡可能有两到三种驱动程序,它们都具有不同的功能。您可以通过 , 服务器部分找出您使用的是哪一个Vendor string。如果是 Radeon,则不应有MESA.
  2. 在 /etc/groups 中检查当前用户的权限。应该以video小组形式进行任何实际的 GL。
  3. 要检查您的 i386 视频驱动程序是否正常工作,您应该... 使用 i386 版本的 glxinfo。它将取代 64 位版本。安装它与apt-get install mesa-utils:i386.检查完成后您可以重新安装 64 版本。
  4. debian 8.0 不稳定,这是测试分支。这意味着您可能会遇到任何类型的问题,并且说明通常可能会过时。
  5. 我建议同时启用测试不稳定,它们之间没有太大区别。保持默认测试。如果有东西丢失或损坏,您可以使用不稳定的软件包。

答案2

AMD fglrx 驱动程序已从 Debian Jessie 中删除2014年7月中旬。 Debian 已将 Xorg 更新为新的 ABI,但 AMD 并未更新其驱动程序以与新的 Xorg 兼容。

这已经是我第三次在 GNU/Linux 上被 AMD 搞得焦头烂额了;另一个问题是它们不支持较新的 Xorg/发行版的较旧显卡,因此您必须使用开源“radeon”驱动程序。

我建议您暂时切换到另一个发行版,该发行版不会太快更新到新的 Xorg(Ubuntu 14.04,Steam OS)。我只是暂时切换回 Windows :/

编辑:吸取的教训是,我应该将 fglrx-driver 置于“保留”状态,这样它就不会被删除,并且会阻止 APT“智能升级”中的 Xorg 更新。

答案3

我有同样的问题。我在 sid 但解决方案应该是相同的。

如果我的记忆力很好,问题是库不在/usr/lib(我不在家,所以我无法准确检查它是否在那里或 /lib),但不用担心您需要的库在 steam 中本身。找到这些库~/.steam并将它们链接到/usr/lib.

我希望这足以指导您找到解决方案,如果没有,请告诉我,我回家后会检查。

相关内容