En fait, j'ai installé le nouvel Ubuntu 15.04 64 bits, et lorsque j'essaie d'installer Steam dessus, il y a un problème. En fait, j'ai téléchargé le paquet deb depuis le site web de Steam, je l'ai installé et quand je le lance rien ne se passe. J'ai essayé de le démarrer depuis le terminal et ce que j'ai
$ Steam
Running Steam on ubuntu 15.04 64-bit
Steam_RUNTIME is enabled automatically
Installing breakpad exception handler for appid(Steam)/version(0_client)
libGL error: unable to load driver: r600_dri.so
libGL error: driver pointer missing
libGL error: failed to load driver: r600
libGL error: unable to load driver: swrast_dri.so
libGL error: failed to load driver: swrast
C'était à l'origine un problème avec Steam sur Ubuntu 15.04/15.10. Steam regroupe les anciennes bibliothèques et entre en conflit avec les pilotes mesa, c’est aussi pourquoi les pilotes fermés ne voient pas ce problème. Mise à jour: Il se peut également que vous manquiez certaines choses. Voir la réponse de mchid.
Il y a un bogue ouvert dans le github de Steam .
La solution actuelle consiste à supprimer l'ancienne version de lib, au moins jusqu'à ce que Valve résolve le problème dans son script de démarrage ou quelque chose du genre.
Donc, entrez ces dossiers et faites ceci (ignorez le x86_64
si vous n’avez qu’un système 32 bits):
cd $HOME/.Steam/steam/ubuntu12_32/Steam-runtime/i386/usr/lib/i386-linux-gnu
mv libstdc++.so.6 libstdc++.so.6.bak
cd $HOME/.Steam/steam/ubuntu12_32/Steam-runtime/AMD64/usr/lib/x86_64-linux-gnu
mv libstdc++.so.6 libstdc++.so.6.bak
Si vous avez un problème avec le répertoire ci-dessus, essayez ceci:
Certaines personnes ont le .Steam/steam/ubuntu12_32
, d’autres n’ont que .Steam/ubuntu12_32
. Si vous n'avez pas ces dossiers, trouvez le bon emplacement en vérifiant où votre Steam recherche le profil de l'utilisateur:
$ fgrep config= /usr/games/Steam
config=$HOME/.Steam
Utilisez cela pour trouver votre emplacement lib:
[config value] + /ubuntu12_32/Steam-runtime/i386/usr/lib/i386-linux-gnu
|
\-> $HOME/.Steam/ubuntu12_32/Steam-runtime/i386/usr/lib/i386-linux-gnu
Cela a fonctionné pour moi ... mais s'il vous plaît, notez que si un jeu nécessite cette ancienne lib de l'environnement d'exécution de Steam, il risque de planter (c'est pourquoi Valve devrait résoudre ce problème)
Edit 2015-08-22:
Comme Steam a maintenant un lien dans le $HOME/.Steam/root
qui pointe toujours vers le bon répertoire d’installation de Steam, cette commande devrait fonctionner pour tout le monde et plus simple pour une solution rapide:
find $HOME/.Steam/root/ubuntu12_32/Steam-runtime/*/usr/lib/ -name "libstdc++.so.6" -exec mv "{}" "{}.bak" \; -print
De plus, n'oubliez pas que sur chaque mise à jour d'exécution de Steam, vous devrez probablement l'exécuter.
Edit 2016-02-16:
Voir aussi la réponse mchid ci-dessous, simplement:
Sudo apt-get install libgl1-mesa-dri libgl1-mesa-dri:i386
pourrait être suffisant pour résoudre ce problème.
Modifiez le 2016-10-23:
Pour ubuntu 16.10 , la commande a été mise à jour pour supprimer davantage de fichiers brisant les pilotes mesa. Cette nouvelle commande devrait donc fonctionner:
find $HOME/.Steam/root/ubuntu12_32/Steam-runtime/*/usr/lib/ \( -name "libstdc++.so.6" -o -name "libgpg-error.so.0" -o -name "libxcb.so.1" -o -name "libgcc_s.so.1" \) -exec mv "{}" "{}.bak" \; -print
Pour les pilotes sources fermés de NVIDIA , voir la réponse de Vincent ci-dessous.
Modifier le 2017-01-08:
Probablement l'édition finale, la dernière mise à jour de Steam linux devrait résoudre la plupart des problèmes, si ce n'est tous les problèmes! enfin! :RÉ
Edit 2017-08-03:
Malheureusement, en revenant de vacances, il a été constaté que certaines mises à jour récentes avaient à nouveau éclaté dans Steam. Donc, si vous obtenez cela au démarrage, juste après le téléchargement de la mise à jour:
process 23148: arguments to dbus_connection_ref() were incorrect, assertion "connection->generation == _dbus_current_generation" failed in file dbus-connection.c line 2688.
et puis le crash de Steam, alors vous frappez thisbug , rapporté comme non fatal, mais il bloque Steam sur les mêmes distributions. La solution de contournement est la suivante:
ln -s ${HOME}/.local/share/Steam/ubuntu12_32/Steam-runtime/i386/lib/i386-linux-gnu/libdbus-1.so.3 ${HOME}/.local/share/Steam/ubuntu12_32/Steam-runtime/pinned_libs_32/libdbus-1.so.3
bonne chance
Fastfix (testé sur Ubuntu 15.04)
mv ~/.local/share/Steam/ubuntu12_32/Steam-runtime/i386/lib/i386-linux-gnu/libgcc_s.so.1{,.disable}
mv ~/.local/share/Steam/ubuntu12_32/Steam-runtime/i386/usr/lib/i386-linux-gnu/libstdc++.so.6{,.disable}
Ce qui suit est tiré de Erreur lors de l’installation de Steam sur ubuntu 15.04 et est de loin la réponse la plus facile à cette question (comme indiqué plus haut par tahtisilma ). J'ajouterais que si vous voulez éviter d'avoir à utiliser le terminal de commande à chaque fois, vous pouvez éditer le fichier du bureau sur votre bureau, en cliquant avec le bouton droit de la souris sur et en sélectionnant les propriétés, puis en remplaçant la commande dans le fichier Suivant:
sh -c "LD_PRELOAD='/usr/$LIB/libstdc++.so.6' DISPLAY=:0 Steam"
Démarrez Steam dans le terminal en utilisant:
LD_PRELOAD='/usr/$LIB/libstdc++.so.6' DISPLAY=:0 Steam
au lieu de simplement vapeur
Steam ne peut pas ouvrir nouveau_dri.so, la bibliothèque partagée chargée de communiquer avec le pilote graphique. Pour vérifier si le pilote est compatible OpenGL, exécutez:
DISPLAY=:0 glxinfo | grep -i direct
Le résultat devrait être:
rendu direct: Oui Lancer Steam en mode débogage:
DISPLAY=:0 LIBGL_DEBUG=verbose Steam
Nous donne la sortie où les lignes suivantes nous donnent un indice:
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))
Il semble que Steam utilise une version différente de libstdc ++. So.6. Permet de vérifier quelle version de Steam utilise:
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
Donc, Steam a chargé LibC6 avec la version 18 d'ABI, où le pilote s'attend à la version 20. La solution consiste à indiquer au système d'exploitation de précharger la version appropriée de LibC6 à l'aide de la variable LD_PRELOAD:
LD_PRELOAD='/usr/$LIB/libstdc++.so.6' DISPLAY=:0 Steam
Le paramètre $ LIB, quelque peu non intuitif, est étendu dans ld.so au bon chemin en fonction de la plate-forme du processus en cours de démarrage (man 8 ld.so pour plus de détails).
Vous pouvez créer un script avec le contenu suivant pour l'exécuter à la place 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 meilleur script pourrait vérifier si la version globale de LibC6 est plus récente que celle de Steam_RUNTIME et seulement ensuite LD_PRELOAD.
Plus de détails peuvent être trouvés sur ici . Notez que je l’ai testé sur Debian et maintenant, il a été testé sur Ubuntu vivid 15.04 et fonctionne très bien.
Cela fonctionne très bien pour moi sous Ubuntu 15.04 64bits avec le pilote propriétaire NVIDIA version 346:
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/lib32/nvidia-346/:/usr/lib/nvidia-346/" Steam
Ceci est une solution simple.
Selon le message d'erreur, il vous manque les fichiers suivants: r600_dri.so
et swrast_dri.so
Exécutez les commandes suivantes pour installer ces fichiers manquants:
Sudo apt-get update
Sudo apt-get install libgl1-mesa-dri libgl1-mesa-dri:i386
Le problème devrait maintenant être résolu.
S'il vous plaît poster des erreurs supplémentaires.
Ces deux lignes de le commentaire de menasheh sur le problème de github fonctionnent avec Ubuntu 15.10:
export LD_PRELOAD='/usr/$LIB/libstdc++.so.6'
export DISPLAY=:0
Notez que si Steam se met à jour, vous devrez peut-être entrer à nouveau ces lignes.
Correctif pour Ubuntu 16.04, Xenial Xerus, 64 bits
Je n'ai que ce problème avec Steam depuis la mise à niveau vers 16.04, il a bien fonctionné le 14.04. J'ai essayé tous les correctifs ci-dessus pour les anciennes versions d'Ubuntu.
La deuxième partie de cette solution a fonctionné pour moi.
$ Sudo dpkg --add-architecture i386
$ Sudo apt-get update
$ Sudo apt-get install wget gdebi libgl1-mesa-dri:i386 libgl1-mesa-glx:i386 libc6:i386
$ wget http://media.steampowered.com/client/installer/Steam.deb
$ Sudo gdebi Steam.deb
Maintenant, je lance à nouveau L4D2 dans Ubuntu - excellent!
Steam peut être installé en tant que paquet flatpak dans toutes les versions actuellement prises en charge d’Ubuntu. Ouvrez le terminal et tapez:
Sudo add-apt-repository ppa: alexlarsson/flatpak # required in 16.04 seulement, pas dans les versions ultérieures Sudo apt update Sudo apt installer flatpak flatpak remote-add --if-not-n'existe pas flathub https://flathub.org/repo/ flathub.flatpakrepo flatpak installer flathub com.valvesoftware.Steam
La première commande permettant d'ajouter ppa: alexlarsson/flatpak n'est pas requise dans 18.04 et les versions ultérieures, car le package flatpak se trouve dans les référentiels par défaut.
Steam peut être lancé en cliquant sur son icône dans le tableau de bord ou lancé depuis le terminal à l’aide de la commande suivante:
flatpak run com.valvesoftware.Steam
De nombreux jeux nécessitent un achat en ligne, mais certains jeux populaires, tels que Team Fortress 2, sont gratuits. Lorsque vous effectuez une recherche dans le magasin, veillez à limiter les résultats en fonction du système d'exploitation SteamOS/Linux. Tous les jeux Linux ne sont pas compatibles avec votre système. Assurez-vous donc de bien connaître la configuration requise avant d'acheter des jeux.
Je viens de rencontrer ce problème lors d’une nouvelle installation d’Ubuntu 18.04 LTS. Il s'avère que la version d'exécution de libgcc_s.so.1
sous Steam était la cause. Renommer le fichier a résolu le problème pour moi:
$ cd ~/.Steam/root/ubuntu12_32/Steam-runtime/i386/lib/i386-linux-gnu/
$ mv libgcc_s.so.1 libgcc_s.so.1.bak