Steam for Linux

Steam for Linux

michaeljtbrooks 2016 年 11 月 5 日 上午 4:17
Linux Mint 17.3 - libGL error: failed to load driver: swrast
I cannot run Steam on my beloved power desktop (running Linux Mint 17.3, nVidia proprietary drivers). The issue seems to be with mesa / libGL...

My graphics card is an nVidia GeForce GTX 750 Ti. I am running a dual-screen setup with one screen flipped portrait and the other landscape. I cannot use the Noveau open-source nVidia drivers because they can not handle this setup. It took me ages to get the screens working, and believe me they would only work with the nVidia proprietary drivers (currently running version 361.28). So uninstalling the proprietary drivers and plumping for Noveau is not an option for me.


I installed Steam from the .deb package from the official Steam site.

Initially I was faced with the classic "Missing 32-bit libraries: libGL.so.1" error. I had already manually installed mesa in order to get Skype running, so I pointed Steam to the relevant mesa libraries by editing /etc/ld.so.conf.d/steam.conf:

$ sudo nano /etc/ld.so.conf.d/steam.conf /usr/lib32 /usr/lib/i386-linux-gnu/mesa $ sudo ldconfig


Then, when I ran steam, I was faced with the following error:

$ steam Running Steam on linuxmint 17.3 64-bit STEAM_RUNTIME is enabled automatically [2016-11-05 10:04:40] Startup - updater built Oct 13 2016 00:47:16 Installing breakpad exception handler for appid(steam)/version(1476379980) libGL error: failed to load driver: swrast libGL error: Try again with LIBGL_DEBUG=verbose for more details. SteamUpdateUI: An X Error occurred X Error of failed request: BadValue (integer parameter out of range for operation)

So I probed it with the debug flag on:

$ export LIBGL_DEBUG=verbose $ steam ... libGL: screen 0 does not appear to be DRI2 capable libGL: OpenDriver: trying /usr/lib/i386-linux-gnu/dri/tls/swrast_dri.so libGL: OpenDriver: trying /usr/lib/i386-linux-gnu/dri/swrast_dri.so libGL: Can't open configuration file /home/michaeljtbrooks/.drirc: No such file or directory. libGL: Can't open configuration file /home/michaeljtbrooks/.drirc: No such file or directory. libGL error: failed to load driver: swrast ...

"No problem", I thought. I know where drirc lurks (/etc/drirc) so created a symlink to it

$ ln -s /etc/drirc ~/.drirc $ steam Running Steam on linuxmint 17.3 64-bit STEAM_RUNTIME is enabled automatically [2016-11-05 10:44:19] Startup - updater built Oct 13 2016 00:47:16 Installing breakpad exception handler for appid(steam)/version(1476379980) libGL: screen 0 does not appear to be DRI2 capable libGL: OpenDriver: trying /usr/lib/i386-linux-gnu/dri/tls/swrast_dri.so libGL: OpenDriver: trying /usr/lib/i386-linux-gnu/dri/swrast_dri.so libGL error: failed to load driver: swrast SteamUpdateUI: An X Error occurred X Error of failed request: BadValue (integer parameter out of range for operatio

So it's still failing.

I cannot install libgl1-mesa-dri:i386 from the package repo:

$ sudo apt-get install --reinstall libgl1-mesa-dri:i386 The following packages have unmet dependencies. libgl1-mesa-dri-lts-vivid : Conflicts: libgl1-mesa-dri:i386 E: Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages.

And any attempt to install libgl1-mesa-glx:i386 or its depedency libglapi-mesa:i386 would rip through X11 like a tornado (so I declined it):

$ sudo apt-get install libglapi-mesa:i386 ... The following packages will be REMOVED ia32-libs libegl1-mesa-lts-vivid libgbm1-lts-vivid libgl1-mesa-dri-lts-vivid:i386 libgl1-mesa-glx-lts-vivid libgl1-mesa-glx-lts-vivid:i386 libglapi-mesa-lts-vivid libglapi-mesa-lts-vivid:i386 libgles1-mesa-lts-vivid libgles2-mesa-lts-vivid libwayland-egl1-mesa-lts-vivid libxatracker2-lts-vivid steam:i386 virtualbox-guest-x11 xorg xserver-xorg-core-lts-vivid xserver-xorg-input-all-lts-vivid xserver-xorg-input-evdev-lts-vivid xserver-xorg-input-mouse-lts-vivid xserver-xorg-input-synaptics-lts-vivid xserver-xorg-input-vmmouse-lts-vivid xserver-xorg-input-wacom-lts-vivid xserver-xorg-lts-vivid xserver-xorg-video-all-lts-vivid xserver-xorg-video-ati-lts-vivid xserver-xorg-video-cirrus-lts-vivid xserver-xorg-video-fbdev-lts-vivid xserver-xorg-video-intel-lts-vivid xserver-xorg-video-mach64-lts-vivid xserver-xorg-video-mga-lts-vivid xserver-xorg-video-neomagic-lts-vivid xserver-xorg-video-nouveau-lts-vivid xserver-xorg-video-openchrome-lts-vivid xserver-xorg-video-r128-lts-vivid xserver-xorg-video-radeon-lts-vivid xserver-xorg-video-savage-lts-vivid xserver-xorg-video-siliconmotion-lts-vivid xserver-xorg-video-sisusb-lts-vivid xserver-xorg-video-tdfx-lts-vivid xserver-xorg-video-trident-lts-vivid xserver-xorg-video-vesa-lts-vivid xserver-xorg-video-vmware-lts-vivid


So, what should I do next to get Steam running without sacrificing my screen setup??



Relevant hardware info:
$ lspci -k 01:00.0 VGA compatible controller: NVIDIA Corporation GM107 [GeForce GTX 750 Ti] (rev a2) Subsystem: Gigabyte Technology Co., Ltd Device 36ca Kernel driver in use: nvidia $ glxinfo | grep "OpenGL version" OpenGL version string: 4.5.0 NVIDIA 361.28

< >
正在显示第 1 - 4 条,共 4 条留言
michaeljtbrooks 2016 年 11 月 7 日 上午 9:51 
Maleko, thanks for your time in replying.

I purged Steam, cleaned up the straggling files, ran an update+upgrade and installed it from my repos as suggested.

Unfortunately I'm getting the same error:
ILocalize::AddFile() failed to load file "public/steambootstrapper_english.txt". [2016-11-07 17:46:06] Startup - updater built Nov 25 2013 18:07:05 libGL: screen 0 does not appear to be DRI2 capable libGL: OpenDriver: trying /usr/lib/i386-linux-gnu/dri/tls/swrast_dri.so libGL: OpenDriver: trying /usr/lib/i386-linux-gnu/dri/swrast_dri.so libGL error: failed to load driver: swrast SteamUpdateUI: An X Error occurred X Error of failed request: BadValue (integer parameter out of range for operation)

My understanding is that swrast is a fall-back library when the standard OpenGL libs are not available or working.

Any other ideas how to get Steam running with my proprietary nVidia drivers on Linux Mint?
michaeljtbrooks 2016 年 11 月 10 日 下午 2:36 
The nVidia drivers came from the nVidia website. I originally used the repo version, but it was too buggy and many versions out of date. Updating it solved a problem I was having with visual artefacts, so I'm not going to roll it back.

I think relying on the repo for everything isn't the answer here.

Long Ago [Linux] 2017 年 1 月 10 日 下午 7:15 
You should use use nvidia drivers from the repos because they are coordinated with the rest of the system and updates. Even nvidia-331 worked with the GTX 750 Ti. If you want newer drivers you get add the graphics-drivers ppa:

sudo add-apt-repository ppa:graphics-drivers/ppa sudo apt-get update sudo apt-get install nvidia-375

But first you have to remove anything from the drivers that you installed with the .run file from nvidia.com, and I am not sure how to do that because I have never used those.

I was using a GTX 750 Ti in Ubuntu 14.04 and am currently running a GTX 1060 in Ubuntu 16.10 on 512 GB mSATA from a failed laptop in a SATA adapter. I had a strange issue trying to use Ubuntu 16.04 in that it made my (legacy) BIOS splash screen and grub menu invisible (blank screen until gui login).
DetailSimply 2018 年 5 月 21 日 上午 11:09 
i did pacman -R mesa
it worked perfectly.
< >
正在显示第 1 - 4 条,共 4 条留言
每页显示数: 1530 50