Error al instalar Steam en ubuntu 15.04

Error al instalar Steam en ubuntu 15.04
agung@agung-K43SJ:~$ steam
Running Steam on ubuntu 15.04 64-bit

STEAM_RUNTIME is enabled automatically

Installing breakpad exception handler for appid(steam)/version(0)

libGL error: unable to load driver: nouveau_dri.so

libGL error: driver pointer missing

libGL error: failed to load driver: nouveau

libGL error: unable to load driver: swrast_dri.so

libGL error: failed to load driver: swrast

Antes de eso, también intenté instalar Steam desde la Terminal, pero no se inició después de haber descargado la actualización.

¿Alguien puede ayudarme a encontrar una solución para instalar Steam?

Respuesta1

Version corta:

Inicie Steam en la terminal usando:

LD_PRELOAD='/usr/$LIB/libstdc++.so.6' DISPLAY=:0 steam

en lugar de solosteam

Versión larga:

Steam no puede abrir nouveau_dri.so, la biblioteca compartida responsable de comunicarse con el controlador de gráficos. Para comprobar si el controlador está habilitado para OpenGL, ejecute:

DISPLAY=:0 glxinfo | grep -i direct

La salida debería ser:

direct rendering: Yes

Ejecutando Steam en modo de depuración:

DISPLAY=:0 LIBGL_DEBUG=verbose steam

Nos da el resultado donde las siguientes líneas nos dan una pista:

libGL: OpenDriver: trying /usr/lib/i386-linux-gnu/dri/nouveau_dri.so
libGL: dlopen /usr/lib/i386-linux-gnu/dri/nouveau_dri.so failed (/home/user/.local/share/Steam/ubuntu12_32/steam-runtime/i386/usr/lib/i386-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by /usr/lib/i386-linux-gnu/dri/nouveau_dri.so))

Parece que Steam usa una versión diferente de libstdc++.so.6. Comprobemos qué versión utiliza Steam:

ls -l ~/.local/share/Steam/ubuntu12_32/steam-runtime/i386/usr/lib/i386-linux-gnu/libstdc++.so.6  

lrwxrwxrwx 1 user user 19 Jul 18  2014 /home/user/.local/share/Steam/ubuntu12_32/steam-runtime/i386/usr/lib/i386-linux-gnu/libstdc++.so.6 -> libstdc++.so.6.0.18

Entonces Steam cargó LibC6 con ABI versión 18 donde el controlador espera la versión 20. La solución es decirle al sistema operativo que precargue la versión adecuada de LibC6 usando LD_PRELOADla variable:

LD_PRELOAD='/usr/$LIB/libstdc++.so.6' DISPLAY=:0 steam

El parámetro $LIB, algo poco intuitivo, se expande en ld.so a la ruta correcta según la plataforma del proceso que se inicia (man 8 ld.so para más detalles).

Puede crear un script con el siguiente contenido para ejecutarlo en lugar de steam:

#!/bin/bash
# Export so all child processes are affected as well
export LD_PRELOAD='/usr/$LIB/libstdc++.so.6'
export DISPLAY=:0
#export LIBGL_DEBUG=verbose
steam

Un script mejor podría verificar si la versión global de LibC6 es más nueva que la de STEAM_RUNTIMEy solo entonces LD_PRELOAD.

Se pueden encontrar más detalles enaquí. Tenga en cuenta que lo probé en Debian y ahora se probó en Ubuntu vivid 15.04 y funciona bien.

Respuesta2

Aquí encontré otra solución que me ayudó a iniciar el cliente Steam:

https://wiki.archlinux.org/index.php/Steam/Troubleshooting

Ejecuté este comando -

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

y ahora se lanza Steam sin precargas adicionales. Espero que esto ayude a todos los que tienen el mismo problema en Ubuntu 16.04.

Respuesta3

Quizás las gccbibliotecas en el tiempo de ejecución de Steam sean incompatibles con sus mesacontroladores.Haga una copia de seguridad de su carpeta de inicio, luego intente eliminar estos archivos de biblioteca:

rm ~/.local/share/Steam/ubuntu12_32/steam-runtime/i386/usr/lib/i386-linux-gnu/libstdc++.so.6
rm ~/.local/share/Steam/ubuntu12_32/steam-runtime/i386/lib/i386-linux-gnu/libgcc_s.so.1

Respuesta4

Aparentemente este error ocurre cuando uno intenta instalar Steam en un64 bitsUbuntu 15.04.

Hice una nueva instalación de Ubuntu 15.04 en mi máquina. También instalé los controladores de gráficos propietarios de NVIDIA.

Recibí este error, pero después de mirar detenidamente noté que Steam es una aplicación de 32 bits, así que instalé algunas bibliotecas de 32 bits y reinstalé el controlador NVIDIA paraVaporpudo lanzar.

sudo dpkg --add-architecture i386
sudo apt-get update
sudo apt-get install libc6:i386 libncurses5:i386 libstdc++6:i386
sudo ./NVIDIA-Linux-x86_64-352.63.run

Donde el último comando debería ser el instalador de su controlador.

Cuando el instalador del controlador solicite instalar bibliotecas de 32 bits, presione sí.

información relacionada