Instalação da Steam no Arch Linux

Publicado por Bruno Lima em 15/10/2016

[ Hits: 6.548 ]

 


Instalação da Steam no Arch Linux



Olá a todos!!!

Ao instalar a Steam aqui no Arch Linux, após executar apenas a instalação e ao tentar rodar o programa houveram alguns erros, lembrando que na própria Wiki do Arch é informado que o Arch Linux não é oficialmente suportado pela Steam...

Nas minhas pesquisas pela internet encontrei um meio em que é possível fazer rodar a Steam no Arch Linux normalmente e gostaria de compartilhar com vocês da comunidade do VOL. Caso tenha alguém com esse mesmo problema e pelo o que vi não são poucos com os mesmo erros que aconteceram comigo. Então vamos entender como consegui contornar esse problema.

Antes de tudo caso não tenha instalado a Steam, basta utilizar o Pacman para a instalação com o seguinte comando:

sudo pacman -S steam

Ou se preferir instalar com o usuário root, utilize o comando "su" e digite a senha de root, não sendo necessário utilizar o sudo antes do comando.

Obs.: antes de instalar este pacote é necessário alterar o seu /etc/pacman.conf e habilitar o repositório Multilib apagando a "#" da frente do nome e do "Include" do repositório.

Vamos ao que de fato interessa, que é resolver os erros que aparecem ao tentar executar a Steam depois de instalada:

1 - Ao tentar abrir o programa através do seu atalho no menu de aplicativos, ele deu sinal que iria abrir, porém ele fecha do nada e com isto o programa não roda.

2 - Tentei abrir o programa via Terminal e então ele me retornou seguintes erros:

steam
/home/bruno/.local/share/Steam/steam.sh: line 161: VERSION_ID: variável não vinculada
/home/bruno/.local/share/Steam/steam.sh: line 161: VERSION_ID: variável não vinculada
Running Steam on arch 64-bit
/home/bruno/.local/share/Steam/steam.sh: line 161: VERSION_ID: variável não vinculada
STEAM_RUNTIME is enabled automatically
Installing breakpad exception handler for appid(steam)/version(0)
libGL error: unable to load driver: i965_dri.so
libGL error: driver pointer missing
libGL error: failed to load driver: i965
libGL error: unable to load driver: swrast_dri.so
libGL error: failed to load driver: swrast


Problema:

Existem dois erros aí, o primeiro é um erro na linha 161 e o segundo o "libGL". No primeiro caso, dá um erro na linha 161 do "steam.sh", pois tenta iniciar "VERSION_ID" de "/etc/os-lancamento", o Arch possui "/etc/os-lancamento", mas ele não tem um "VERSION_ID". Que no caso aparece em "/etc/os-release".

3 - Então segui os passos a seguir para resolver esse problema:

A solução é alterar a linha 160 de "steam.sh", de:

elif [ -f /etc/os-release ]; then

para:

elif $(grep 'VERSION_ID' /etc/os-release > /dev/null 2>&1); then

Geralmente "LD_LIBRARY_PATH" não é definido por padrão, então para corrigir isso vamos mudar a linha 710 de:

export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/lib32"

para:

export LD_LIBRARY_PATH="${LD_LIBRARY_PATH:-/usr/lib}:/usr/lib32"

Para acessar "steam.sh" basta seguir esse caminho: /home/USUÁRIO/.local/share/Steam/steam.sh

e pode abrir o steam.sh com o Geany, Netbeans etc para ficar mais fácil de identificar as linhas correspondentes para editá-las, mas caso não tenha algum deles pode abrir até com um editor de texto qualquer.

Para o segundo erro, o da libGL, eu achei a solução na Wiki do Arch, estava em inglês então traduzir pra facilitar pra vocês. Quem quiser ir lá mesmo assim, o link está lá no final.

O erro de libGL se dá porque a Steam instala suas próprias versões mais antigas de algumas bibliotecas coletivamente chamadas de "Steam Runtime". Pode acontecer dessas bibliotecas do Steam entrarem em conflito com as bibliotecas incluídas no Arch Linux.

Para resolver esse problema você pode forçar a Steam para usar as versões do sistema (aquelas instalados pelo pacman ). Há duas maneiras de fazer isso:

1 - Usando o vinculador dinâmico, rode esse comando no terminal para fazer a Steam rodar imediatamente:

LD_PRELOAD='/usr/$LIB/libstdc++.so.6 /usr/$LIB/libgcc_s.so.1 /usr/$LIB/libxcb.so.1 /usr/$LIB/libgpg-error.so' steam

Se você quiser usar esse método em um atalho .desktop, pode usar este comando no Exec=campo.

Exec=env LD_PRELOAD='/usr/$LIB/libstdc++.so.6 /usr/$LIB/libgcc_s.so.1 /usr/$LIB/libxcb.so.1 /usr/$LIB/libgpg-error.so' /usr/bin/steam %U

2 - Excluindo as bibliotecas de tempo de execução, execute este comando para excluir as bibliotecas de execução conhecidas por causar problemas no Arch Linux:

find ~/.steam/root/ \( -name "libgcc_s.so*" -o -name "libstdc++.so*" -o -name "libxcb.so*" -o -name "libgpg-error.so*" \) -print -delete

Se o comando acima não funcionar, execute o comando acima novamente, em seguida, executar este comando.

find ~/.local/share/Steam/ \( -name "libgcc_s.so*" -o -name "libstdc++.so*" -o -name "libxcb.so*" -o -name "libgpg-error.so*" \) -print -delete

Eu rodei o primeiro comando da opção 1 e a Steam rodou na hora, mas pelo terminal. O segundo comando da opção 1 eu não entendi, então parti pra opção 2 e o primeiro comando já fez a Steam funcionar pelo atalho.

Fontes:
Outras dicas deste autor

Pacman colorido no Arch Linux

Solucionando erro após a instalação do megasync no Arch Linux

Leitura recomendada

Criando live-USB Mageia 5.1 para Dual-Boot (UEFI) em partições GPT

Sistema OcoMon 2.0RC6 com MySQL 5.5 no Ubuntu 12.04 - Importação das tabelas do banco de dados

Red Hat Lança o Red Hat Enterprise Linux v.4

Renomeado em Massa com GPRename

Usando o slackpkg

  

Comentários
[1] Comentário enviado por d_mariano em 10/03/2017 - 00:55h

Boa noite amigo.
Segui o procedimento que foi informado porem ainda não funciona.
Segue erro

[mad@archmad ~]$ LD_PRELOAD='/usr/$LIB/libstdc++.so.6 /usr/$LIB/libgcc_s.so.1 /usr/$LIB/libxcb.so.1 /usr/$LIB/libgpg-error.so' steam
Running Steam on arch 4.9.11-1-ARCH 64-bit
STEAM_RUNTIME is enabled automatically
ERROR: ld.so: object '/usr/$LIB/libgpg-error.so' from LD_PRELOAD cannot be preloaded (cannot open shared object file): ignored.
Installing breakpad exception handler for appid(steam)/version(0)
libGL error: No matching fbConfigs or visuals found
libGL error: failed to load driver: swrast

Não estou conseguindo entender, qualquer ajuda é bem vinda.

[2] Comentário enviado por brunnometal em 03/06/2017 - 18:49h


[1] Comentário enviado por d_mariano em 10/03/2017 - 00:55h

Boa noite amigo.
Segui o procedimento que foi informado porem ainda não funciona.
Segue erro

[mad@archmad ~]$ LD_PRELOAD='/usr/$LIB/libstdc++.so.6 /usr/$LIB/libgcc_s.so.1 /usr/$LIB/libxcb.so.1 /usr/$LIB/libgpg-error.so' steam
Running Steam on arch 4.9.11-1-ARCH 64-bit
STEAM_RUNTIME is enabled automatically
ERROR: ld.so: object '/usr/$LIB/libgpg-error.so' from LD_PRELOAD cannot be preloaded (cannot open shared object file): ignored.
Installing breakpad exception handler for appid(steam)/version(0)
libGL error: No matching fbConfigs or visuals found
libGL error: failed to load driver: swrast

Não estou conseguindo entender, qualquer ajuda é bem vinda.


Olá, desculpa a demora passei um bom tempo sem entrar no fórum e presumo que você já tenha resolvido, mas qualquer o Arch Linux disponibilizou o pacote steam-native-runtime que já resolve e não sendo mais necessário fazer todo esse procedimento, quando postei esse procedimento ainda não tinha esse pacote disponível.

então basta instalar o steam e o steam-native-runtime para a Steam funcionar normal!!!

Vlw e obrigado!!!



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts