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

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

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创建一个符号链接。 怎么办? 你有什么其他的建议?

64位系统上的这个问题是由/usr/lib早于LD_LIBRARY_PATH不是/usr/lib32 。 Steam尝试64位库并抱怨,而不再深入了解。

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

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

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

这将/usr/lib32到库路径,然后启动steam(使用脚本的原始参数)。 现在/usr/lib32位于/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被覆盖,我可以简单地从脚本中再次粘贴该行来修复它。

通过将/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任何文件。

来自: https : //github.com/ValveSoftware/steam-for-linux/issues/321

我得到了同样的问题并通过这样解决了它:

 $ cd ~/.steam/bin $ ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 . 

这对我也有用。

修复了Mint 14的最新64位Nvidia驱动程序310.32以及安装的32位驱动程序支持

 /emul/ia32-linux/usr/lib 

通过增加

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

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

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

我终于在上面提到的post中找到了帮助 – 但是有一个不同的解决方案。

似乎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

如果你使用Steam for Linux有限测试版,我会在Steam for Linux论坛上发布 。 他们应该有更好的帮助,如果这是软件本身的问题,开发人员将能够解决它。 此外,如果您使用的是64位操作系统,那里有很多人可能已经遇到了您遇到的麻烦,因此,确切地知道该怎么做。

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

我通过使用32位GL库重新安装NVIDIA驱动程序解决了这个问题(在安装了所请求的库之后)。

我只是假设安装那些其他32位图形库打破了一些链接,并重新安装NVIDIA驱动程序与那些真正的32位库修复了链接问题。

我有Skype这个问题。 我通过再次安装官方Nvidia驱动程序修复它,并在安装过程中安装32位兼容库。