Steam:加载共享库时出错:libGL.so.1:错误的ELF类:ELFCLASS64


11

在安装Nvidia驱动程序后,当我尝试运行Steam时,出现此错误:

steam: error while loading shared libraries: libGL.so.1: wrong ELF class: ELFCLASS64

我发现了这个问题以及建议安装的答案之一:

sudo apt-get install libgl1-mesa-glx:i386

我已经安装好了libgl1-mesa-glx:i386。比我发现这个。它建议与32位libGL建立符号链接。那怎么办 你有什么其他的建议?


我可以确认,重新安装libgl1库确实有所帮助。Ubuntu的14.04 X86-64,桌面Compiz的,图形驱动程序的Nvidia的GeForce为450 GTS
hariprasad

A sudo aptitude install libgl1-mesa-glx:i386显示305个程序包将被删除,而大约100个程序包仍未解决。看来这将塞满我的系统,所以我认为最好的做法是用64个库和32位库(或更好)双重引导Ubuntu,或者在大多数情况下使用一个主系统,在游戏中安装一个64位以及在其上安装32位实例自己的32位游戏分区。
颠倒

Answers:


11

在64位的系统中,这个问题是由引起/usr/lib较早的是LD_LIBRARY_PATH/usr/lib32。Steam尝试使用64位库并进行投诉,而无需进一步寻找。

但是可以通过in进行修复,但是~/Steam/steam.sh每次运行Steam时该文件似乎都恢复为原始版本。

我通过创建执行此操作的脚本来修复它:

#!/bin/bash
export LD_LIBRARY_PATH=/usr/lib32:$LD_LIBRARY_PATH
steam $*

这将添加/usr/lib32到库路径,然后开始运行(使用脚本的原始参数)。现在/usr/lib32可以在before的路径中找到/usr/lib,steam将成功使用32位库。

您可能还需要添加行

export LD_LIBRARY_PATH=/usr/lib32:$LD_LIBRARY_PATH

/usr/bin/steam,只要将它添加到最后一行之前,它就会具有相同的效果。您需要sudo进行编辑/usr/lib/steam

  • 这有一个额外的好处,那就是它是一个更好的解决方法,因为所有启动的东西(应用程序菜单项,文件类型关联,URI关联)都将正常运行。
  • 缺点/usr/bin/steam是更新蒸汽时可能会覆盖。

我使用后一种方法,同时保留脚本作为备份。这样,如果/usr/bin/steam被覆盖,我可以简单地从脚本中再次复制粘贴该行以进行修复。


7

通过添加/usr/lib32到新文件来修复带有nVidia 319.17驱动程序的raring ringtail(xubuntu 13.04)中的问题:

$ sudo nano /etc/ld.so.conf.d/lib32.conf

然后运行:

$ sudo ldconfig 

由于该文件/etc/ld.so.conf包含include /etc/ld.so.conf.d/*.conf,因此该目录中具有扩展名的任何文件.conf都会被解析。


这可能比其他任何答案都要好。
Tek


2

使用最新的64位Nvidia驱动程序310.32(安装了32位驱动程序支持)为Mint 14修复了此问题

/emul/ia32-linux/usr/lib 

通过添加

export LD_LIBRARY_PATH=/emul/ia32-linux/usr/lib:$LD_LIBRARY_PATH 

在文件"export"开头的第一个之后/usr/bin/steam


不建议使用“薄荷糖”作为基础,因为薄荷糖是Ubuntu的衍生产品,因此薄荷糖在这里不合时宜
Thomas Ward

2

我遇到了同样的问题,但是使用Skype。上面的所有解决方案(创建符号链接,配置LD_LIBRARY_PATH)都不适合我。

我终于在上面已经提到的帖子中找到了帮助-但使用了不同的解决方案。

似乎nvidia更新器(当请求安装OpenGL 32位兼容库的许可时)搞砸了并删除了/usr/lib/i386-linux-gnu/mesa/libGL.so.1/usr/lib/i386-linux-gnu/mesa/libGL.so

重新安装 libgl1库确实有帮助:

sudo apt-get install --reinstall libgl1-mesa-glx:i386


1

如果您使用的是Steam for Linux受限测试版,我会将其发布在Steam for Linux论坛上。他们应该有更好的帮助,如果软件本身有问题,开发人员将可以对其进行修复。另外,如果您使用的是64位操作系统,那么那里的很多人可能会遇到麻烦,因此,他们确切地知道该怎么做。


0

我在Linux Mint Debian Edition 2 64位上遇到了完全相同的问题。

我通过使用32位GL库重新安装NVIDIA驱动程序(在安装了需要的Steam库之后)解决了该问题。

我只是假设安装其他32位图形库会中断某些链接,而使用这些真正的32位库重新安装NVIDIA驱动程序会解决此链接问题。


0

我在Skype中遇到了这个问题。我通过再次安装官方的Nvidia驱动程序进行了修复,并在安装过程中安装了32位兼容性库。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.