Linux Mint - Free and powerful

Sunday, 21 July 2013

nvidia - Error loading libGL.so.1 - Ask Ubuntu ~ Ray's Saffer Food

nvidia - Error loading libGL.so.1 - Ask Ubuntu ~ Ray's Saffer Food:

'via Blog this'

Trying to fix skype disappearing in Linux Mint 15. Seems OK for now.



When attempting to run various pieces of software (notably Steam and Yenka), I have come across an error similar to this: enter code here error while loading shared libraries: libGL.so.1: cannot open shared object file: No such file or directory
I'm running a 64 bit system, with an NVidia Optimus card (I dual boot for certain windows only software that requires a dedicated graphics card). I have bumblebee installed, and I am using the nvidia-current driver, rather that one downloaded from NVidia, as recommended.
The library (libGL.so.1) is not present in the top directory of /usr/lib, however it is present in/usr/lib32/nvidia-current, as a softlink to /usr/lib32/nvidia-current/libGL.so.304.64.
A section of the output from ldconfig -p:
libGL.so.1 (libc6,x86-64, OS ABI: Linux 2.4.20) => /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1
libGL.so (libc6,x86-64, OS ABI: Linux 2.4.20) => /usr/lib/x86_64-linux-gnu/libGL.so
libGL.so (libc6,x86-64, OS ABI: Linux 2.4.20) => /usr/lib/x86_64-linux-gnu/mesa/libGL.so
Obviously a library with that name is being loaded, but they are located in /usr/lib/x86_64-linux-gnu, however installed software doesn't seem to able to 'see' it. For Steam, running it with optirun causes it to work, but this is not the case for Yenka. I assume that optirun causes the library stored in/usr/lib32/nvidia-current to be used, which allows Steam to run, so I can't understant why Yenka won't run.
Can anyone explain why software can't see the normal mesa library, and why Yenka refuses to run with the nvidia-current library?
shareimprove this question

2 Answers


I am having the same issue after installing skype ...so you can do either thing to fix this error..
1st one is run the application by following command ...for example i m running skype..
LD_PRELOAD=/usr/lib/i386-linux-gnu/mesa/libGL.so.1 skype
2nd that what i did
sudo nano /etc/ld.so.conf.d/skype.conf
and add the following line in it
/usr/lib/i386-linux-gnu/mesa/
save & exit
and lastly run
sudo ldconfig -v
i hope this will fix your libGL.so.1 error as it did mine
You can also find libGL.so.1
   find / -name libGL.so.1
shareimprove this answer
I managed to fix it in the end. Unfortunately, I can't remember how, but I remember it consisted of creating random symlinks to the library, running ldconfig a lot, and then removing the aforementioned symlinks. Everything works fine now. – jdp407 Mar 21 at 20:56

With the nvidia drivers it's looking for an alternative i386 lib provided by the nvidia package. Since that doesn't exist, we need to use the libGL.so.1 provided by mesa.
On my machine (ubuntu-gnome raring, using nvidia-325) I was able to do this using the following:
update-alternatives --display i386-linux-gnu_gl_conf
This will show you what the available options are. On my machine I got the following:
i386-linux-gnu_gl_conf - auto mode
  link currently points to /usr/lib/nvidia-325/alt_ld.so.conf
/usr/lib/i386-linux-gnu/mesa/ld.so.conf - priority 500
  slave i386-linux-gnu_xorg_extra_modules: /usr/lib/i386-linux-gnu/xorg/x11-extra-modules
/usr/lib/nvidia-325/alt_ld.so.conf - priority 8602
Current 'best' version is '/usr/lib/nvidia-325/alt_ld.so.conf'
so, do the following:
sudo update-alternatives --config i386-linux-gnu_gl_conf
then select the best alternative (I selected i386-linux-gnu/mesa/ld.so.conf):
There are 2 choices for the alternative i386-linux-gnu_gl_conf (providing /etc/ld.so.conf.d/i386-linux-gnu_GL.conf).

  Selection    Path                                     Priority   Status
------------------------------------------------------------
* 0            /usr/lib/nvidia-325/alt_ld.so.conf        8602      auto mode
  1            /usr/lib/i386-linux-gnu/mesa/ld.so.conf   500       manual mode
  2            /usr/lib/nvidia-325/alt_ld.so.conf        8602      manual mode

Press enter to keep the current choice[*], or type selection number: 1
update-alternatives: using /usr/lib/i386-linux-gnu/mesa/ld.so.conf to provide /etc/ld.so.conf.d/i386-linux-gnu_GL.conf (i386-linux-gnu_gl_conf) in manual mode
After you have completed that, try running:
sudo ldconfig
and then you're done.

2 comments :

  1. Thanks. This worked for me for fixing steam in 13.10.

    ReplyDelete
  2. Thanks. This helped me fix the issue I was having with Steam in 13.10.

    ReplyDelete

Thank you for taking the time to comment. Your opinion is important and of value and we appreciate the positive feedback! If you are "Negative Nancy" then please do us, and humanity, a favor, and piss off.

Total Pageviews

Google+ Followers

Pages

Blog Archive

Popular Posts

Recent Comments

Rays Twitter feed

Ads

Web sites come and go and information is lost and therefore some pages are archived. @rayd123. Powered by Blogger.