Steam: erro ao carregar bibliotecas compartilhadas: libGL.so.1: classe ELF errada: ELFCLASS64

10

Após a instalação do driver Nvidia quando tento executar o Steam, estou recebendo este erro:

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

Eu encontrei isso

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

Já instalei libgl1-mesa-glx:i386 . Eu encontrei este . Sugere fazer um link simbólico para a libGL de 32 bits. Como pode fazer isso? Você tem outras sugestões?

    
por Olcay Ertaş 12.11.2012 / 21:37

8 respostas

11

Esse problema nos sistemas de 64 bits é causado por /usr/lib sendo anterior em LD_LIBRARY_PATH than /usr/lib32 . O Steam tenta as bibliotecas de 64 bits e reclama, sem procurar mais nada.

Ele pode ser corrigido no entanto em ~/Steam/steam.sh , mas esse arquivo parece ser restaurado para a versão original toda vez que o vapor é executado.

Eu consertei criando um script que faz isso:

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

Isso pré-acrescenta /usr/lib32 ao caminho da biblioteca e inicia o steam (com os argumentos originais do script). Agora /usr/lib32 é encontrado no caminho antes de /usr/lib e o steam usará com êxito as bibliotecas de 32 bits.

Você também pode adicionar a linha

export LD_LIBRARY_PATH=/usr/lib32:$LD_LIBRARY_PATH

para /usr/bin/steam , ele terá o mesmo efeito, desde que você o adicione antes da última linha. Você precisará sudo para editar /usr/lib/steam .

  • Isso tem a vantagem adicional de que é uma correção melhor, já que tudo o que começa a funcionar (a entrada no menu do aplicativo, associações de tipo de arquivo, associações de URI) funcionará corretamente.
  • A desvantagem é que /usr/bin/steam provavelmente será substituído quando o vapor for atualizado.

Eu uso o último método, mantendo o script como um backup. Dessa forma, se /usr/bin/steam for sobrescrito, posso simplesmente copiar e colar a linha novamente do script para corrigi-la.

    
por Terion 15.11.2012 / 21:09
7

Corrigido isto no ringtail (xubuntu 13.04) com drivers nVidia 319.17 adicionando /usr/lib32 a um novo arquivo:

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

em seguida, executando:

$ sudo ldconfig 

Como o arquivo /etc/ld.so.conf contém include /etc/ld.so.conf.d/*.conf , qualquer arquivo nesse diretório com a extensão .conf é analisado.

    
por scruff 03.05.2013 / 05:33
4

De: link

Eu peguei o mesmo problema e resolvi isso:

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

Isso funcionou para mim também.

    
por hansonap 24.04.2013 / 01:52
2

Corrigido isso para o Mint 14 com os mais novos drivers Nvidia de 64 bits 310.32 com o suporte ao driver de 32 bits instalado em

/emul/ia32-linux/usr/lib 

adicionando

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

Após o primeiro "export" no início do arquivo /usr/bin/steam .

    
por terrigan 24.02.2013 / 00:05
2

Eu encontrei o mesmo problema, mas com o skype . Todas as soluções acima (criação de links simbólicos, configuração de LD_LIBRARY_PATH) não funcionaram para mim.

Eu finalmente encontrei ajuda na postagem já mencionada acima, mas com uma solução diferente.

Parece que o atualizador nvidia (ao solicitar permissão para instalar bibliotecas de compatibilidade OpenGL de 32 bits) confundiu e removeu /usr/lib/i386-linux-gnu/mesa/libGL.so.1 e /usr/lib/i386-linux-gnu/mesa/libGL.so .

Reinstalando a biblioteca libgl1 ajudou:

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

    
por b-studios 11.05.2014 / 11:12
1

Se você estiver usando o Steam para Linux beta limitado, eu postaria isso em os fóruns do Steam for Linux . Eles devem ter uma ajuda melhor, e se for um problema com o software em si, os desenvolvedores poderão consertá-lo. Além disso, se você estiver usando um sistema operacional de 64 bits, há muitas pessoas que provavelmente passaram pelos problemas que você tem e, portanto, sabem exatamente o que fazer.

    
por Spice 12.11.2012 / 22:46
0

Eu tive exatamente o mesmo problema no Linux Mint Debian Edition 2 de 64 bits.

Resolvi isso reinstalando os drivers NVIDIA com as bibliotecas GL de 32 bits (depois de instalar essas bibliotecas a vapor solicitado).

Assumi apenas que a instalação dessas outras bibliotecas gráficas de 32 bits quebrou alguns links e a reinstalação dos drivers NVIDIA com essas bibliotecas reais de 32 bits corrige o problema de vinculação.

    
por SHOTbyGUN 03.04.2015 / 03:40
0

Eu tive esse problema com o Skype. Eu corrigi-o instalando o driver oficial da Nvidia novamente e instalo a biblioteca de compatibilidade de 32 bits durante a instalação.

    
por Saeed Zarinfam 31.08.2016 / 06:38