Not a problem with nvidia-drivers 331.38 on gentoo linux, also, on my preliminary search for libatiuki.so.1 I could not find any references. Most likely an ubuntu packaging issue.
The libatiuki.so.1 is part of the fglrx package, the AMD driver. But I rather think that the steam.sh script, which checks everything before running the actual binary and setting all the environment variables, is broken.
If you’re still getting the direct rendering message, you likely have a broken graphics set‐up ‐ as installing nvidia-331 should sort that out for you. Did you do anything like removing gfx libs manually?
Staying on 12.04 is fine for now, don’t worry about that :)
No, I'm not getting the DRI message anymore, probably because the client doesn't even get that far. When I got the DRI message, the client would start nonetheless, but the games had problems.
Now, the You are missing the following 32-bit libraries message is displayed by the steam.sh script and only after that the steam client tries to start, but fails with Fatal Error: Failed to load steamui.so, i.e. it doesn't even open anymore.
The interesting part is that I can't reproduce the output of the command to find the missing libraries when running it manually, so it's hard to determine where it goes wrong.
I also didn't remove any libraries manually. If there is some specific output I could post to provide more information, I'd be happy to do so.
Okay, I got it! In the end, it was easy, but still.
Solution: I deleted /usr/lib32/libGL.so.1.2 and reinstalled libgl1-mesa-glx:i386
Explanation: This is a very old and frequently updated installation of Ubuntu. And back in the days, I had an ATI/AMD graphics card and its drivers installed. Seems like the deinstallation didn't clean everything up and the /usr/lib32/libGL.so.1.2 was still built against the AMD files. After I've deleted this file and reinstalled libgl1-mesa-glx:i386, the symlinks to it were removed, too, and the Nvidia driver is now found. Steam works fine again.
I could reproduce the error by running the command to find missing libraries in steam.sh with the correct LD_LIBRARY_PATH:
LD_LIBRARY_PATH=/opt/Steam/ubuntu12_32:/opt/Steam/ubuntu12_32/steam-runtime/i386/lib/i386-linux-gnu:/opt/Steam/ubuntu12_32/steam-runtime/i386/lib:/opt/Steam/ubuntu12_32/steam-runtime/i386/usr/lib/i386-linux-gnu:/opt/Steam/ubuntu12_32/steam-runtime/i386/usr/lib:/opt/Steam/ubuntu12_32/steam-runtime/amd64/lib/x86_64-linux-gnu:/opt/Steam/ubuntu12_32/steam-runtime/amd64/lib:/opt/Steam/ubuntu12_32/steam-runtime/amd64/usr/lib/x86_64-linux-gnu:/opt/Steam/ubuntu12_32/steam-runtime/amd64/usr/lib::/usr/lib32
LD_PRELOAD= ldd /opt/Steam/ubuntu12_32/steamui.so | grep "=>" | grep -v linux-gate | grep ati
which gave
libatiuki.so.1 => not found
This error didn't show up when I removed /usr/lib32 from the library path. That made me inspect that folder and behold, I've found
libGL.so -> mesa/libGL.so (there was no mesa directory)
libGL.so.1 -> libGL.so.1.2
libGL.so.1.2
The symlinks had the same timestamp as the nvidia-331 folder, so I guessed it had something to do with the latest update. I then tried reinstalling
but nothing worked. After manually deleting the symlinks and running steam.sh it worked again, but reinstalling libgl1-mesa-glx:i386 created the symlink to the wrong libGL.so.1.2 again. Only after deleting that, everything is fine again.
In retrospect, I think that probably was also the reason for the "OpenGLX context not using direct rendering" problem from before. Finally, my journey has come to an end and I can play again under Linux. Which is actually bad, I have work to do ...
Glad you got it sorted! Closing as this was a distro/package funk.
Nothing extracted yet.
I'm using Ubuntu 12.04.1 64bit. (I don't want to upgrade right now, I don't have the time.)
Graphics: Nvidia GeForce 560 Ti
I get the following error when starting steam:
And when I click that away:
So, the
steam.shscript is complaining about a missing ATI driver file (fglrx package), although I have an Nvidia card and drivers.I poked around in the
steam.shand executed the line that checks for missing librarieswhich gives the output
but obviously a different one when I just run the command
steam.I could try to install the fglrx package for AMD cards, but I shouldn't need it and I'm afraid it could confuse and mess up my graphics.
Any ideas? This seems to be a very new problem and Google gives me only 3 search results, all about AMD cards.
A little more background:
After some Steam client update last year, it started complaining about the OpenGLX context not using direct rendering, which worked fine before. My (and others) guess was that I needed newer nVidia drivers, which were not available for my version of Ubuntu (I don't want to upgrade right now, see above.)
Yesterday, nvidia-331 and so on became available and I installed them, hoping that would fix the problem. But now I get the error described above